微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – 如何在数据框中绘制行

我的数据集看起来像这样

"Name of Countries","2001","2002","2003","2004","2005","2006","2007","2008","2009","2010"
"BANGLADESH","431312","435867","454611","477446","456371","484401","480240","541884","468899","431962" 
"SRILANKA","112813","108008","109098","128711","136400","154813","204084","218805","239995","266515" 
"UK","405472","387846","430917","555907","651803","734240","796191","776530","769251","759494" 
"USA","329147","348182","410803","526120","611165","696739","799062","804933","827140","931292"

我想用y轴绘制行作为值,x轴是年份,例如.我试过美国

t=df[df['Name of Countries']=='USA']
x=pd.DataFrame([t.iloc[0].index,t.iloc[0].values]).T
x.plot()
plt.show() 

这是完全丑陋的代码,.
我得到的是

enter image description here


我希望-USA在传奇和X轴上作为列的名称[2001,2002 … 2010],并且可以以更好的方式完成,而不像我正在做的那样通过单独的行.
`

解决方法:

加载df时,需要指定“国家/地区名称”是您的索引.此外,在我看来,为了您的目的,使用国家作为列和年份行将是一个更明智的选择.

df = pd.read_csv(yourcsv, index_col='Name of Countries') #set column as       index
df = df.T #Transpose df, Now countries are your columns and years your rows

一旦你以这种方式加载df,一切都非常简单:

df.USA.plot(legend=True) #plot usa column
plt.show()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐