亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

條件 NaN 填充不更改列或全部為 None

條件 NaN 填充不更改列或全部為 None

一只斗牛犬 2023-07-05 10:05:01
我有一個 df,其中有一列 Critic_Score,該列具有 NaN 值。我試圖用同一平臺的評論家分數的平均值來替換它們。這個問題已經在堆棧溢出上被問過好幾次了,我使用了 4 個建議,但沒有給我想要的輸出。請告訴我如何解決這個問題。這是 df 的子集:x[['Platform','Critic_Score']].head()Platform    Critic_Score0   wii 76.01   nes NaN2   wii 82.03   wii 80.04   gb  NaN有關原始 df 的更多信息:x.head().to_dict('list'){'Name': ['wii sports',  'super mario bros.',  'mario kart wii',  'wii sports resort',  'pokemon red/pokemon blue'], 'Platform': ['wii', 'nes', 'wii', 'wii', 'gb'], 'Year_of_Release': [2006.0, 1985.0, 2008.0, 2009.0, 1996.0], 'Genre': ['sports', 'platform', 'racing', 'sports', 'role-playing'], 'NA_sales': [41.36, 29.08, 15.68, 15.61, 11.27], 'EU_sales': [28.96, 3.58, 12.76, 10.93, 8.89], 'JP_sales': [3.77, 6.81, 3.79, 3.28, 10.22], 'Other_sales': [8.45, 0.77, 3.29, 2.95, 1.0], 'Critic_Score': [76.0, nan, 82.0, 80.0, nan], 'User_Score': ['8', nan, '8.3', '8', nan], 'Rating': ['E', nan, 'E', 'E', nan]}這些是我嘗試過的語句及其輸出:1.x['Critic_Score'] = x['Critic_Score'].fillna(x.groupby('Platform')['Critic_Score'].transform('mean'), inplace = True)0    None1    None2    None3    None4    NoneName: Critic_Score, dtype: objectx.loc[x.Critic_Score.isnull(), 'Critic_Score'] = x.groupby('Platform').Critic_Score.transform('mean')#no change in column0    76.01     NaN2    82.03    80.04     NaNx['Critic_Score'] = x.groupby('Platform')['Critic_Score']\    .transform(lambda y: y.fillna(y.mean()))#no change in column0    76.01     NaN2    82.03    80.04     NaNName: Critic_Score, dtype: float64x['Critic_Score']=x.groupby('Platform')['Critic_Score'].apply(lambda y:y.fillna(y.mean()))x['Critic_Score'].head()Out[73]:0    76.01     NaN2    82.03    80.04     NaNName: Critic_Score, dtype: float64
查看完整描述

1 回答

?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

x.update(
    x.groupby('Platform').Critic_Score.transform('mean'),
    overwrite=False)
  • 首先,您創建一個具有相同行數但每行具有平臺平均值的新 df。

  • 然后用它來更新原來的

請記住,您的樣本只有一行nes和另一行gb,兩者都有nan分數,所以沒有什么可以平均的


查看完整回答
反對 回復 2023-07-05
  • 1 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號