Заменить пустые значения pandas
подскажите как заменить пустые значения быстро, имею таблицу
d = {'col1': [1, 2, np.nan, np.nan], 'col2': [1, 2, 3, 4]}
df = pd.DataFrame(data=d)
нужно заменить значения отсутствующие колонки в col1 на значения из col2 apply слишком долог для меня, как вариант np.where НО можно ли изменить код
df.loc[df.col1.isna(), ['col1']] = df.loc[df.col1.isna(), ['col2']]
что бы он работал не только c константой, или подскажите, пожалуйста, иные быстрые варианты?
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Вообще-то метод fillna может принимать на вход Series, так что ему можно прямо нужную колонку передать, из которой он и возьмёт значения, которыми заменит NA:
df['col1'] = df['col1'].fillna(df['col2'])