pandas 如何绘制列中发生的每个国家的线图?

8ehkhllq  于 2023-04-10  发布在  其他
关注(0)|答案(1)|浏览(121)

我想为土耳其、英国和经合组织绘制三条线,但这些国家不是专栏,所以我很难找到一种方法来绘制它们。
我得到这个df通过
df = df.loc[df[“Variable”].eq(“Relative advantage”)& df[“Country”].isin([“United Kingdom”,“Türkiye”,“OECD - Total”])]
| 年份|国家|价值|
| --------------|--------------|--------------|
| 一九九○年|图尔基耶|二十|
| 一九八〇年|英国|三十四|
| 一九九二年|英国|三十二|
| 一九八〇年|经合组织|二十九|
| 一九九二年|经合组织|二十三|

jtw3ybtb

jtw3ybtb1#

你可以使用pivot_table()方法来完成这个任务。举个例子:

import pandas as pd

# Set up example dataframe
df = pd.DataFrame([
    [1990,'Turkiye',20],
    [1992,'Turkiye',22],
    [1990,'UK',34],
    [1992,'UK',32],
    [1990,'OECD',29],
    [1992,'OECD',23],
], columns=["year", "country", "value"])

# Pivot so countries are now columns
table = df.pivot_table(values='value', columns='country', index='year')

这将创建一个 Dataframe ,其中国家是列:

country  OECD  Turkiye  UK
year                      
1990       29       20  34
1992       23       22  32

(我改变了一些日期,使它更好地工作。)
然后,我将它绘制出来:

相关问题