|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
是在编写统计南昌空气质量种类数量的程序的时候出现的,我看网课是,网课老师讲了一个统计豆瓣某一年电影的标签种类以及数量的分析程序。但每部电影差不多有3个标签,像,动作,冒险,惊悚,喜剧之类的,用表格的形式,做了一个大表格,但我的空气质量种类每天只有一种,像是在优,良,轻度污染里的一种,无法使用那种大表格的形式。
#统计分类的列表
temp_list = df["aqiInfo"].str.split(",").tolist() #转化成大列表
aqiInfo_list = list(set([i for j in temp_list for i in j ]))
#构造全为0的数组
zeros_df=pd.DataFrame(np.zeros((df.shape[0],len(aqiInfo_list))),columns=aqiInfo_list)
#print(zeros_df)
#给每种出现的空气质量种类赋值为1
for i in range(df.shape[0]):
#zeros_df.loc["空气质量种类"] =1
zeros_df.loc[i,temp_list[i]] =1
print(zeros_df.head(3))
#统计每种空气质量的和
aqiInfo_count = zeros_df.sum(axis=0)
print(aqiInfo_count)
#排序
aqiInfo_count = aqiInfo_count.sort_values()
_x = aqiInfo_count.index
_y = aqiInfo_count.values
#绘图
plt.bar(range(len(_x)),_y,density=True)
plt.xticks(range(len(_x)),_x)
plt.grid()
plt.show()
运行的时候 #转化成大列表的下一行 aqiInfo_list = list(set([i for j in temp_list for i in j ])) 这儿显示出错 TypeError: 'float' object is not iterable,说是格式不对,我空气质量种类aqiInfo数据类型是object 。我不知道如何改动那部分程序
特此向各位大佬求教。
|
|