我想计算每行有多少列的值大于零。因此,如果三列中有两列具有所需的值,则得分为2。你知道吗
我可以使用for循环来构建它,但是它看起来很慢,所以我正在寻找更快的替代方案。我该怎么做?你知道吗
df = pd.DataFrame({'intro': [1, 2, 3], 'quote': [0, 1, 0],'sample': [0, 1, 4]},
columns=['intro', 'quote','sample'])
df['score']=0
cols=['intro', 'quote', 'sample']
for i in range(len(df)):
print(i)
for col in cols:
if df.iloc[i][col] >= 1:
df['score'][i]= df['score'][i]+1
df_expected = pd.DataFrame({'intro': [1, 2, 3], 'quote': [0, 1, 0],'sample': [0, 1, 4],'score': [1, 3, 2]},
columns=['intro', 'quote','sample','score'])
df_expected
这将达到以下目的:
您可以创建值的真/假帧>;0,如下所示:
不能使用
并创建如下列:
相关问题 更多 >
编程相关推荐