我认为这是一个简单的问题,但我遗漏了一些东西。
我有一个数据框架。我想平均行...但我只想匹配一定数量的条目 - 或者缺少NaN值。所以下面的数据框应该得到[1.5,1.5,np.nan]的'平均'列,但是我得到的是“系列的真值是模糊的”错误。我不知道这意味着什么。
我以为它会是这样的......
<iframe/>
答案 0 :(得分:2)
您可以先删除它reindex
,thresh
dropna
表示需要多少非空值
df.dropna(thresh=2).mean(1).reindex(df.index)
Out[264]:
0 1.5
1 1.5
2 NaN
dtype: float64
答案 1 :(得分:1)
由于df [&#39; nullsum&#39;]是一个系列,并且无法进行此类比较,因此会引发错误。您可能希望比较每行的nullsum值。
df['mean']= df.apply(lambda x: np.mean(x[:3]) if x['nullsum'] < 2 else np.nan,axis=1)
这里x逐行,因此x [&#39; nullsum&#39;]给出该特定行的值。