python - 根据其他列的值创建新列

标签 python pandas dataframe eval

我想创建一个列来检查列列表中是否存在特定值。 该值为Y=1。 我已经尝试过的是

mask = df[col_list] ==1 

这给了我每列的输出。但我想要一个评估器,它检查 col_list 中的每一行是否存在 Y=1,如果存在则给出 True。 我想要什么:

df['evaluator'] = df[col_list].eval(col_list[line = i] == 1 for one column then return True)

这可以通过 eval 实现吗?我应该如何构建表达式?

谢谢!

最佳答案

试试这个:

df[col_list].eq(1).any(axis=1) 

关于python - 根据其他列的值创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44863549/

相关文章:

python - 如何使用 pipenv 运行 --upgrade?

python - HashMap 在Python字典中传递引用

python - 仅解析小时 :Minute:Second using pandas

python - 如何计算选定范围的平均值?(pandas)

dataframe - 具有特定条件的 Pyspark crossJoin

python - 创建新列时日期转换不起作用

python - Pandas 根据另一个数据框中的匹配列填充新的数据框列

python - subprocess.Popen : Different buffering for stdin, 标准输出,标准错误?

pandas - 如何检查具有多种类型的列中的数据类型? -寻找更好的解决方案

python-3.x - 使用 Python 截断并重新编号与特定 id/组对应的列