python - 如何循环遍历熊猫并匹配条件
问题描述
我似乎无法弄清楚。我需要将值为 1 的列分组到一个新列“New_column”中。有人能帮我吗。这是我尝试过的代码。
for (index_label, row_series) in data.iterrows():
print('Row Index label : ', index_label)
print('Row Content as Series : ', row_series.values)
解决方案
您可以使用dot实现它:
df = pd.DataFrame(
{
'A': [0,0,1],
'B': [1,0,0],
'C': [0,0,0,],
'D': [1,0,1],
'F': [1,0,1]
}
)
df['new_column'] = df.dot(df.columns).str.join(",")
A B C D F new_column
0 0 1 0 1 1 B,D,F
1 0 0 0 0 0
2 1 0 0 1 1 A,D,F
更新:对于超过一个字母的列,@BEN_YO 建议了一个非常好的解决方案:
df.dot(df.columns+',').str[:-1]
推荐阅读
- python - 如何将存储在函数中的变量值发送到另一个 Python 文件?
- javascript - 由提交函数改变的反应表单状态
- javascript - 如何更改传单路由机的语言
- javascript - 更改传单地图的颜色
- mapbox - Mapbox 的样式过滤器:未设置属性
- xml - 如何在 xsl 中存储和显示变量值
- flutter - Flutterengine:进入发布模式后应用程序崩溃
- javascript - 如何使用 Javascript 进行实时产品倒计时
- c# - 使用 SqlCommand 时依赖 SqlConnection 重试逻辑是否安全?
- ssh - Fail2ban SSH MaxStartups 怎么禁止?