首页 > 解决方案 > 通过迭代每一行并使用结​​果输出创建新列来注释最大值

问题描述

通过迭代每一行来注释最大值。并使用结果输出创建新列。任何人都可以帮助在 Python 中使用 pandas,如何获得结果?

         text      A      B      C
index                     
0        Cool     False  False   True
1        Drunk     True  False  False
2        Study     False  True  False


Output:
        Text      Result   
index                     
0       Cool       False  
1       Drunk      False  
2       Study      False  

标签: pythonpython-3.xpandasdataframe

解决方案


如果每行的总和超过列长度的一半,True则为更常见的值。

尝试:

df["Result"] = df.drop("text", axis=1).sum(axis=1)>=len(df.columns)//2+1
output = df[["text", "Result"]]

>>> df
    text  Result
0   Cool   False
1  Drunk   False
2  Study   False

推荐阅读