Я новичок в stackoverflow.
Я заметил это поведение панд Объединение_first () и просто хотел бы понять, почему.
Когда у меня есть следующий фрейм данных,
df = pd.DataFrame({'A':[6,'',7,''], 'B':[1, 3, 5, 3]})
df['A'].combine_first(df['B'])
Out[1]:
0 6
1
2 7
3
Name: A, dtype: object
Принимая во внимание, что инициализация с np.nan вместо '' дает ожидаемое поведение comb_first ()
df = pd.DataFrame({'A':[6,np.nan,7,np.nan], 'B':[1, 3, 5, 3]})
df['A'].combine_first(df['B'])
Out[2]:
0 6.0
1 3.0
2 7.0
3 3.0
Name: A, dtype: float64
А также замена '' на np.nan и последующее применение комбинирование_first (), похоже, тоже не работает.
df = pd.DataFrame({'A':[6,'',7,''], 'B':[1, 3, 5, 3]})
df.replace('', np.nan)
df['A'].combine_first(df['B'])
Out[3]:
0 6
1
2 7
3
Name: A, dtype: object
Я хотел бы понять, почему это происходит, прежде чем использовать альтернативный метод для этой цели.