假设我在数据框中有四列 A、B、C、D df:
import pandas as pd
df = pd.read_csv('results.csv')
df
A B C D
good good good good
good bad good good
good bad bad good
bad good good good
Run Code Online (Sandbox Code Playgroud)
我想添加另一列result。其中的变量应基于相应行的变量。在这里,在我的情况下,如果相应行中至少有三种商品,即 A、B、C、D 列,则结果中的变量应该是validelse notvalid。
预期输出:
A B C D results
good good good good valid
good bad good good valid
good bad bad good notvalid
bad good good good valid
Run Code Online (Sandbox Code Playgroud)
您可以使用:
# columns of interest:
cols = ['A','B','C','D']
df['results'] = np.where(df[cols].eq('good').sum(1).ge(3),
'valid', 'invalid')
Run Code Online (Sandbox Code Playgroud)
输出:
A B C D results
0 good good good good valid
1 good bad good good valid
2 good bad bad good invalid
3 bad good good good valid
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40 次 |
| 最近记录: |