每行字符串出现次数的总和

我一直试图为此寻找答案,但找不到 - 我一定是误解了一些东西。

我只想对每行出现字符串(“True”)的次数求和。所需的输出如下:

d1 = {'score': ['True', 'True', 'False'], 'score2': ['False', 'True', 'True'], 'total': [1, 2, 1]}
df1 = pd.DataFrame(data=d1)


慕桂英4014372
浏览 132回答 2
2回答

慕田峪7331174

试试这个,df1['total']= df1.eq('True').sum(axis=1)如果 df 是布尔值试试这个,df1['total']= df1.eq(True).sum(axis=1)对于更清洁的方式,df1['total']= df1.sum(axis=1)输出:   score score2  total0   True  False      11   True   True      22  False   True      1

尚方宝剑之说

字符串值:eq+sumdf1['total'] = df1[['score', 'score2']].eq('True').sum(1)print(df1)   score score2  total0   True  False      11   True   True      22  False   True      1布尔值: sum在这种情况下不需要执行布尔测试:df1['total'] = df1[['score', 'score2']].sum(1)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python