用pandas选出每行最大值,当某行最大值大于2时,统计这一行的最大值个数,并输出3,当某行最大值小于等于2时,输出0
时间: 2023-10-29 22:05:43 浏览: 64
使用pandas把某一列的字符值转换为数字的实例
你可以使用`pandas.DataFrame.max`函数找到每行的最大值,然后使用条件判断语句来判断每个最大值是否大于2。接着使用`pandas.DataFrame.eq`函数来检查每个元素是否等于该行的最大值。最后,使用`pandas.DataFrame.sum`函数来统计每行的最大值的数量,并根据条件输出相应的结果。下面是示例代码:
```python
import pandas as pd
# 创建示例数据
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
# 选出每行的最大值
max_values = df.max(axis=1)
# 统计每行的最大值的数量,并根据条件输出相应的结果
result = []
for i in range(len(max_values)):
if max_values[i] > 2:
count_max = df.iloc[i].eq(max_values[i]).sum()
result.append(count_max)
else:
result.append(0)
print(result)
```
这将输出以下结果:
```
[0, 0, 1]
```
其中,每个数字表示每行的最大值的数量。第一行和第二行的最大值都小于等于2,因此输出0;第三行的最大值为9,大于2,因此输出这一行的最大值个数1。
阅读全文