繁体   English   中英

折线图与熊猫

[英]line graph with pandas

我拥有以下数据状态明智的专利信息,直到2000年到2004年

States;2000;2001;2002;2003;2004
state1;12302;11610;12297;13291;13491
state2;13010;14304;13599;13761;14398
state3;1242;1228;1099;1109;1016
state4;398;399;379;408;361
state5;164;198;143;158;185
state6;1185;1427;1166;955;1105

我正在使用熊猫将这些数据加载到DataFrame中

patents = pd.read_csv('Patent.csv', encoding='ANSI', 
                     sep=';', header=0, skiprows=0, 
                     names=['States','Year'],
                     index_col=['States'])

但是我不确定我是否正确执行了操作,因为我的数据有两个标头。 (状态和年份)当我使用创建以下数据的图形时

patents.plot(kind='line')

它不显示否的折线图。 国家和年份之间的专利数量:

在此处输入图片说明

谢谢你的帮助

您有5列YEARS,但您只给一个名字。 您要么需要拥有5个YEARS列:

patents = pd.read_csv('Patent.csv', encoding='ANSI', 
    sep=';', header=0, skiprows=0, 
    names=['States','2000','2001','2002','2003','2004'],
    index_col=['States'])

或将您的数据更改为具有字符串:

States;Years
state1;"12302,11610,12297,13291,13491"
state2;"13010,14304,13599,13761,14398"

我想你想要这样的东西:

patents.set_index('States').T.plot(kind='line')

输出:

在此处输入图片说明

另请尝试:

patents =pd.read_csv('patents.csv',sep=';',encoding='ANSI',index_col='States')
patents .transpose().plot(kind='line')
patents .transpose().plot(kind='bar')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM