数据分析-day06-pandas-dataFrame案例分析3:统计不同月份不同类型的条数

# -*- coding: utf-8 -*-

# @File    : pandas_dataframe_class_datatime_total_demo.py
# @Date    :  2020-01-07 14:27
# @Author  : admin
'''
不同月份不同类型的统计次数
'''
import pandas as pd
from matplotlib import pyplot as plt
import numpy as  np;
df=pd.read_csv("../../data/911.csv");
#df=df.head(1000);
print(df.head(5))
print("#######################################1.新添加一列分类#############################")
cate_list=df["title"].str.split(": ").tolist()
distinct_cate_list=[m[0] for m in cate_list];
df['cate']=pd.DataFrame(np.array(distinct_cate_list).reshape(df.shape[0],1))
print(df)
print("#######################################2.获取时间序列设置索引#############################")
#处理时间,将字符串转变成pandas的时间序列
df["timeStamp"]=pd.to_datetime(df["timeStamp"])
#设置为索引
df.set_index("timeStamp",inplace=True);
print(df)
group_data=df.groupby(by="cate")
print("=======")
print(group_data)

print("#######################################3.画图#############################")
plt.figure(figsize=(20,8),dpi=80)
for key ,values in group_data:
    print(key)
    print("=====")
    print(values)
    cate_month=values.resample("M").count()["title"];
    _x=cate_month.index;
    _y=cate_month.values;
    print(_y)
    #格式化riq
    _x=[m.strftime("%Y%m%d") for m in _x]
    plt.plot(range(len(_x)),_y,label=key);

plt.xticks(range(len(_x)),_x,rotation=45)
plt.legend(loc="best")
plt.show();

数据分析-day06-pandas-dataFrame案例分析3:统计不同月份不同类型的条数_第1张图片

你可能感兴趣的:(数据分析)