【发布时间】:2021-11-16 01:53:17
【问题描述】:
我有未定义数量的具有某些值的列。例如,假设有 4 列:[a,b,c,d],并且每个列名都有关联的值,如下所示:
a b c d
0 23 11 0
11 43 33 22
12 0 12 0
我想在d旁边写另一列,它的值大于0的列的最大值,例如:
像这样:
a b c d e
0 23 11 0 b,c
11 43 33 22 a,b,c,d
12 0 12 0 a,c
我的尝试:
dic2 = {'a':[12,0,23],'b':[21,23,0],'c':[0,22,33],'d':[0,22,0]}
df = pd.DataFrame(dic2)
df[df>0]
这将在任何为零的地方返回 NaN 值,但我不知道如何获取具有这些 NaN 值的列。
【问题讨论】:
-
b 和 c 的值 >0 (23,11),其中最大值为 32?
-
在您的尝试中,所有行都有 0,不是吗?
-
列 b 和 c 的值 >0 然后请查看关联列名 a=11 b=32 c=22 d=10 的值
-
所以在 b 和 c 中, b 具有最大值。这是 32
-
请查看更新后的请求