gpt4 book ai didi

python - 有什么方法可以根据 Pandas 中的特定条件在数据框的所有行中添加列名?

转载 作者:行者123 更新时间:2023-12-02 16:42:22 24 4
gpt4 key购买 nike

我有一个像这样的数据框:

   Name  Age  Class Maths English Physics Bio Chemistry
A 13 7 1 None None 1 None
B 17 10 None 1 1 None None

我想添加一个名为 Subject 的新列,该列应包括列名称(具有 1)作为主题字段的值,如下所示:

   Name  Age  Class    Subject     
A 13 7 Maths, Bio
B 17 10 English, Physics

我尝试了几种方法,但比平时花费的时间更长。

最佳答案

您可以使用 apply使用 lambda 函数。

df['Subject'] = (df == '1').apply(lambda x: ','.join(df.columns[x]), axis=1)
df = df.iloc[:, [0,1,2,-1]]
df
Name Age Class Subject
0 A 13 7 Maths, Bio
1 B 17 10 English, Physics

关于python - 有什么方法可以根据 Pandas 中的特定条件在数据框的所有行中添加列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61362120/

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