gpt4 book ai didi

python - 如何计算具有非空值的列和行之间的交集

转载 作者:太空宇宙 更新时间:2023-11-03 23:57:11 25 4
gpt4 key购买 nike

嘿,所以标题可能很难理解,所以基本上这是我的 DataFrame 的一个小示例。

    A   B   C   D   E   F   G   H   J   K   action
0 22 noise
1 68 junk
2 93 junk
3 80 junk
4 57 noise

操作列只有两个值(噪音和垃圾)。例如,在第一个初始行列中,“F”的值为 22,它的 Action 是噪音,我想计算当 Action 为“噪音”时“F”具有非空值的次数,当 Action 为“噪音”时“F”具有非空值的次数行动是“垃圾”。当然,我也想为所有其他单字母列计算这个。所以我想要一个可能看起来像这样的字典,其中内部字典包含每个操作的计数。

{'F': {'noise': 1, 'junk': 0},
'G': {'noise': 0, 'junk': 1},
'E': {'noise': 0, 'junk': 1},
'C': {'noise': 0, 'junk': 1},
'J': {'noise': 1, 'junk': 0}
}

我尝试过使用 df.iterrows() 和 df.notnull() 但我似乎无法理解正确的逻辑。

edit - 更新了预期的输出。

最佳答案

使用notnull() 来屏蔽您的dfgroupby 每个操作并简单地sum

df.iloc[:, :-1].notnull().astype(int).groupby(df.action).sum().to_dict()

关于python - 如何计算具有非空值的列和行之间的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57189965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com