[英]Python: Mask is replacing column values with NaNs
我試圖用組均值替換 ~15000 列 [列 6:14844] 中的零,同時保留組 label 列 [列 1] 和其他幾個標識列 [列 2:5] 不變。 這是我想出的代碼,它有效,除了它用 NaN 替換了我想跳過 [1:5] 的列
df = df.mask(df.iloc[:, np.r_[1, 6:14844]].eq(0), df.iloc[:, np.r_[1, 6:14844]].groupby('group_label').transform('mean'))
提前致謝。
您只需要分配給列的子集,而不是整個 DataFrame。
df.iloc[:, 6:14844] = (df.iloc[:, 6:14844]
.mask(df.iloc[:, 6:14844].eq(0),
df.iloc[:, np.r_[1, 6:14844]]
.groupby('group_label')
.transform('mean')))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.