如何根据来自不同列的多个值过滤熊猫表? [复制]
Posted
技术标签:
【中文标题】如何根据来自不同列的多个值过滤熊猫表? [复制]【英文标题】:How to filter pandas table based on multiple values from differen columns? [duplicate] 【发布时间】:2020-02-26 13:50:21 【问题描述】:我有一个以下格式 [df] 的 pandas 表,由“noc”和“year”索引。如何访问“noc、年份组合”并将“total_medals”条目保存到列表中?
medal Bronze Gold Medal Silver total_medals
noc year
ALG 1984 2.0 NaN NaN NaN 2.0 2.000000
1992 4.0 2.0 NaN NaN 6.0 4.000000
1996 2.0 1.0 NaN 4.0 7.0 5.000000
ANZ 1984 2.0 15.0 NaN 2.0 19.0 19.000000
1992 3.0 5.0 NaN 2.0 10.0 14.500000
1996 1.0 2.0 NaN 2.0 5.0 11.333333
ARG 1984 2.0 6.0 NaN 3.0 11.0 11.000000
1992 5.0 3.0 NaN 24.0 32.0 21.500000
1996 3.0 7.0 NaN 5.0 15.0 19.333333
例如:我想访问 1992 年 ARG 的“total_medals”(即 21.5)并将其保存到新列表中。
【问题讨论】:
你能解释一下为什么需要列表吗?因为输出是标量。 这能回答你的问题吗? Select rows in pandas MultiIndex DataFrame 【参考方案1】:索引值中有MultiIndex
,所以可以通过DataFrame.loc
中的元组来取值:
a = df.loc[('ARG',1992), 'total_medals']
print (a)
21.5
【讨论】:
以上是关于如何根据来自不同列的多个值过滤熊猫表? [复制]的主要内容,如果未能解决你的问题,请参考以下文章