异想天开

What's the true meaning of light, Could you tell me why

pandas库使用

日期:2019-03-04 19:38:46
  
最后更新日期:2019-03-05 20:04:25
pandas库是python一套基于numpy数据分析的库。以前原始阶段做一些指标统计,那个时候不知道pandas,就是在python脚本里面写一堆dict,list,tuple数据结构各种衔接,看到了pandas优雅的用法,感觉如见到正规军一样。
pandas支持dataframe数据结构,这种数据结构可以看出是一个table。 可以对它的列进行一些统计和数值操作。从文件读取数据到dataframe,只需要简单的一行:
[code lang="cpp"]
import pandas as pd
df = pd.read_csv("./my.csv")
[/code]
pandas支持对dataframe里面的列进行类似sql的操作分析。
1.比如查看视频时长大于2个小时的
[code lang="cpp"]
df[ df["duration"] > 7200.0 ]
[/code]
2. 查看视频时长大于1小时,同时文件大小大于1GB
[code lang="cpp"]
df[ (df["duration"] > 7200) & (df["filesize"] > 1024*1024*1024) ]
[/code]
3. 统计时长分布情况
[code lang="cpp"]
def count(x, max_level, min_level):
if min_level < x and x <= max_level:
return 1
else:
return 0
print "视频总数: ", len(df), "时长均值: ", df["duration"].mean()
step = 10
num = 10
for i in range(1, num, 1):
minl = (i-1)*step
maxl = i*step
if i == num - 1:
maxl = 1024*1024*1024*1024

print "视频时长{}_{}秒,".format(minl,maxl), df["duration"].apply( lambda x: count(x,maxl, minl) ).sum()
[/code]