У меня есть pandas dataFrame смешанных типов, некоторые - строки, а некоторые - числа. Я хотел бы заменить значения NAN в строковых столбцах на "." И значения NAN в столбцах float на 0.
Рассмотрим этот небольшой фиктивный пример:
df = pd.DataFrame({'Name':['Jack','Sue',pd.np.nan,'Bob','Alice','John'],
'A': [1, 2.1, pd.np.nan, 4.7, 5.6, 6.8],
'B': [.25, pd.np.nan, pd.np.nan, 4, 12.2, 14.4],
'City':['Seattle','SF','LA','OC',pd.np.nan,pd.np.nan]})
Теперь я могу сделать это в 3 строках:
df['Name'].fillna('.',inplace=True)
df['City'].fillna('.',inplace=True)
df.fillna(0,inplace=True)
Так как это небольшой фрейм данных, 3 строки, вероятно, хорошо. В моем реальном примере (который я не могу поделиться здесь из-за причин конфиденциальности данных), у меня есть еще много строковых столбцов и числовых столбцов. Я в конечном итоге написал много строк только для fillna. Есть ли лаконичный способ сделать это?