[英]Pandas: Replace zero and NAN values with column Mean depending on product type
我想用列 Mean 替換零和 NAN 值,但是,我希望代碼對與產品類型(AB 或 C)相關的平均值進行分類
總而言之,我有一個 pandas dataframe 共有 4 列。 其中一列指定 3 種產品類型之一:A、B 和 C。
每行有 3 個測量列。 我想將每列的 0 和 NAN 值替換為與產品類型相關的列平均值。 如下表:
因此,我想編寫一個允許軟件計算以下內容的語法:
產品 A 各列測量值 1,2 和 3 的平均值
產品 B 各列測量值 1,2 和 3 的平均值
產品 C 每個列測量值 1,2 和 3 的平均值
對於這樣的操作,我們可以使用以下代碼行:
df.fillna(df.mean(), inplace=True)
但是,這假定均值適用於列中的所有值,而不適用於另一列中定義的類別(這里是產品類型類別 A、B 和 C)
非常感謝您對此的幫助。 謝謝
讓我們嘗試使用groupby
進行transform
df.fillna(df.groupby('PRODUCT TYPE').transform('mean'), inplace=True)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.