-1

我在 csv 文件中有一个数据,格式如下,我不确定如何排列这些数据以获取下面附加的图像

creation_time   physical_device_type
---------------   --------------------
7/25/2018 14:53   email
7/26/2018 14:53   printer
7/26/2017 14:53   email 
7/24/2017 14:53   printer
7/23/2017 14:53   email
7/22/2019 14:53   email
7/22/2019 14:53   fax
7/22/2019 14:53   fax

我想得到下面的图表,如下所示,

![样本图

计数应该在 y 轴上,年份应该在 X 轴上

df = pd.read_csv('C:/test/test.csv');
4

1 回答 1

0

首先将parse_dates参数添加到read_csvfor datetime 列,然后使用crosstabfor count 和 last plot

df = pd.read_csv('C:/test/test.csv', parse_dates=['creation_time'])

df1 = pd.crosstab(df['creation_time'].dt.year, df['physical_device_type'])
print (df1)
physical_device_type  email  fax  printer
creation_time                            
2017                      2    0        1
2018                      1    0        1
2019                      1    2        0

df1.plot()
于 2018-10-16T07:38:32.890 回答