如何使用熊猫将一列移动到除标题之外的另一列[重复]
Posted
技术标签:
【中文标题】如何使用熊猫将一列移动到除标题之外的另一列[重复]【英文标题】:How to move one columns to other column except header using pandas [duplicate] 【发布时间】:2019-11-17 04:16:20 【问题描述】:我需要在我的脚本中添加以下功能
下面是excel:
Name Value1 Value2 PASS/FAIL
Name1 10 0 FAIL
Name2 20 5 PASS
Name3 30 0 FAIL
Name4 40 0 FAIL
Name5 50 0 FAIL
我需要在“PASS/FAIL”列中搜索 PASS 字符串。 如果存在“PASS”字符串,我需要将 Value1 移动到 Value2 并将 Value1 列更新为“0”。
感谢任何帮助。
提前致谢。
【问题讨论】:
使用mask= df['PASS/FAIL'] == 'PASS'
、df['Value2'] = np.where(mask, df['Value1'], df['Value2'])
和df['Value1'] = np.where(mask, 0, df['Value1'])
或者您可以创建一个二维数组,例如:s=np.column_stack((np.where(m,0,df.Value1),df.Value1.values))
,然后使用 df[['Value1','Value2']]=df[['Value1','Value2']].mask(m,s)
@MohitMotwani 找到另一种方法。 :)
【参考方案1】:
检查这部分代码:
df['value2']=df['value1'] if df['PASS/FAIL']==PASS
df['value1'] = 0 if df['PASS/FAIL']==PASS
【讨论】:
以上是关于如何使用熊猫将一列移动到除标题之外的另一列[重复]的主要内容,如果未能解决你的问题,请参考以下文章