我有一个720 x 720的数据框,带有数值。我想遍历每一行,将每个单元格与条件进行比较,然后在该行的末尾创建一个新单元格,其中包含满足条件的行中单元格的数量(小于或等于某个数字c)。因此,最后我需要添加一个新列,告诉我每行有多少个数字满足我的条件。
编辑:添加了数据框的图像
谢谢!
答案 0 :(得分:2)
假设我们有一个像这样的数据框:
import numpy as np
import pandas as pd
df = pd.DataFrame({'a': [1, 2, 0.3, 4], 'b': [0.5, 3, 0.7, 5], 'c': [2, 0.8, 1, 3]})
以下代码生成一个新列,该新列中每行的数字均小于或等于2:
df['<= 2'] = df.apply(lambda x: len(np.where(x.values <= 2)[0]), axis=1)
您可以修改条件来满足您的问题。
答案 1 :(得分:0)
我将首先创建列,然后在第二步中添加值。条件一旦适用,该列仍然存在。否则,您总是创建一个新列。