经过几个小时的搜索后,我仍然无法从多索引数据帧中将一些数据提取到新的数据帧中。如果我完全诚实的话,我在理解整个多索引内容时遇到很大问题:/
数据来自 OECD,使用 pandas_datareader.data 作为网络。
我正在搜索如何获取特定国家/地区在特定时间段的特定数据。
有人可以帮助我吗?
import pandas_datareader.data as web
import pandas as pd
podatki = web.DataReader('MEI_CLI', data_source='oecd')
df = pd.DataFrame(podatki)
#Below is the data that I'm searching.
#does not work!!!
df = df.xs('Original, seasonally adjusted (GDP)','Slovenia','Annual')
print(df)
真的非常感谢!
问候,大卫
最佳答案
您需要:
podatki = web.DataReader('MEI_CLI', data_source='oecd')
print (podatki)
df = podatki.xs(('Original, seasonally adjusted (GDP)', 'Slovenia', 'Annual'),
level=('Subject', 'Country','Frequency'), axis=1)
print(df)
Subject Original, seasonally adjusted (GDP)
Country Slovenia
Frequency Annual
Time
1990 NaN
1991 NaN
1992 NaN
1993 NaN
1994 NaN
1995 NaN
1996 NaN
1997 NaN
1998 NaN
1999 NaN
2000 NaN
2001 NaN
2002 NaN
...
...
但不幸的是没有数据:
print(df.dropna())
Empty DataFrame
Columns: [(Original, seasonally adjusted (GDP), Slovenia, Annual)]
Index: []
关于python - 从 Pandas MultiIndex 数据框中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42134701/