給定一個具有相似列的數據框,其中間有空值。如何使用其他列中的非空值動態填充列中的空值,而不明確指定其他列名稱的名稱,例如選擇第一列category1
並用來自其他相同行的列的值填充空行?使用其他列中的非空值填充空值
data = {'year': [2010, 2011, 2012, 2013, 2014, 2015, 2016,2017, 2018, 2019],
'category1': [None, 21, None, 10, None, 30, 31,45, 23, 56],
'category2': [10, 21, 20, 10, None, 30, None,45, 23, 56],
'category3': [10, 21, 20, 10, None, 30, 31,45, 23, 56],}
df = pd.DataFrame(data)
df = df.set_index('year')
df
category1 category2 category3
year
2010 NaN 10 10
2011 21 21 21
2012 NaN 20 20
2013 10 10 10
2014 NaN NaN NaN
2015 30 30 NaN
2016 31 NaN 31
2017 45 45 45
2018 23 23 23
2019 56 56 56
填充category1
後:
category1 category2 category3
year
2010 10 10 10
2011 21 21 21
2012 20 20 20
2013 10 10 10
2014 NaN NaN NaN
2015 30 30 NaN
2016 31 NaN 31
2017 45 45 45
2018 23 23 23
2019 56 56 56
謝謝@jezrael,我更新了問題。我的意思是動態填充其他列而沒有明確說明其他列 – ArchieTiger
我編輯答案,請檢查它。 – jezrael
它的工作,謝謝! – ArchieTiger