日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

mediarecorder添加时间戳_Python脚本实现数据处理(官方实例)和Hive自带时间函数...

發布時間:2024/7/19 python 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mediarecorder添加时间戳_Python脚本实现数据处理(官方实例)和Hive自带时间函数... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

官網示例

官網地址:

https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-ApacheWeblogData

下載數據

wget http://files.grouplens.org/datasets/movielens/ml-100k.zip

我們下載好數據

安裝unzip

yum install -y unzip

解壓數據

創建庫

創建表

CREATE TABLE u_data (

userid INT,

movieid INT,

rating INT,

unixtime STRING)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY 't'

STORED AS TEXTFILE;

加載數據

LOAD DATA LOCAL INPATH '/data/ml-100k/u.data' OVERWRITE INTO TABLE u_data;

查看下數據

select * from u_data limit 10;

編寫python腳本,創建文件weekday_mapper.py,編寫下面代碼

import sys

import datetime

for line in sys.stdin:

line = line.strip()

userid, movieid, rating, unixtime = line.split('t')

weekday = datetime.datetime.fromtimestamp(float(unixtime)).isoweekday()

print 't'.join([userid, movieid, rating, str(weekday)])

創建結果表

CREATE TABLE u_data_new (

userid INT,

movieid INT,

rating INT,

weekday INT)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY 't';

添加文件

add FILE /data/weekday_mapper.py;

插入數據

INSERT OVERWRITE TABLE u_data_new

SELECT

TRANSFORM (userid, movieid, rating, unixtime)

USING 'python weekday_mapper.py'

AS (userid, movieid, rating, weekday)

FROM u_data;

查詢結果

SELECT weekday, COUNT(*)

FROM u_data_new

GROUP BY weekday;

就可以看到結果了,周一評論量12254,后面依次類推得到信息

再看下常見的時間格式

Hive的自帶的時間函數,利用show functions;

查看下面兩個函數:

unix_timestamp(轉換為時間戳)unix_timestamp,以格林威治時間為基準

from_unixtime (轉換為標準時間格式)

這些時間準確表達可以分析網站后臺日志數據,統計用戶停留時間等。比如查看兩條時間的時間差,先轉換為統一unix時間戳,再相減就能得到

測試

select unix_timestamp("2015-08-31 00:04:37");

如果使用下面

select unix_timestamp("20150831000437");

select unix_timestamp("20150831 000437");

運行之后null,無法識別格式

指定格式進行轉換,

select unix_timestamp("20150831000437","yyyyMMddHHmmss");

select unix_timestamp("20150831000437","yyyyMMdd HHmmss");這樣也不可以

將Unix時間戳轉換為標準時間格式

select from_unixtime(1440950677);

這次就可以

select from_unixtime(1440950677,"yyyyMMdd HHmmss");

總結

以上是生活随笔為你收集整理的mediarecorder添加时间戳_Python脚本实现数据处理(官方实例)和Hive自带时间函数...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。