gpt4 book ai didi

python - 如何将数据框的 column_name 用作行上的值?

转载 作者:行者123 更新时间:2023-12-03 18:28:07 25 4
gpt4 key购买 nike

我有这个框架,2 列(蓝色和红色)和值 (0,1)

**Blue   Red**
0 1
1 1

我想要这样的 Dataframe 结果,如果列 Red 的值为 1,则将此 1 替换为 name_column Red

**Blue   Red**
0 Red
Blue Red

我可以用“for”来做到这一点,但是,你知道另一种方法吗?谢谢

最佳答案

一种方法是将 df 和一个相同形状的数组相乘:

df * np.broadcast_to(df.columns.values, df.shape)

   Blue  Red
0 Red
1 Blue Red

这让您最终在所有单元格中都有字符串。


另一种解决方案是对每一列使用where

df.apply(lambda s: s.where(s.eq(0), s.name))

这会让您最终得到混合类型。


作为一般经验法则,最好为每一列使用单一类型的数组。

关于python - 如何将数据框的 column_name 用作行上的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61824960/

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