Fillnaは、あなたが欲しいものを行います。
categorial_data = pd.DataFrame({'sex': ['male', 'female', 'male', 'female'],
'nationality': ['American', 'European', float('nan'), 'European']})
print(categorial_data)
categorial_data=categorial_data.fillna('some_unique_string')
print('after replacement')
print(categorial_data)
encoder = DV(sparse = False)
encoded_data = encoder.fit_transform(categorial_data.T.to_dict().values())
print(encoded_data)
はあなたに転嫁と呼ばれる欠損値を埋め
nationality sex
0 American male
1 European female
2 NaN male
3 European female
after replacement
nationality sex
0 American male
1 European female
2 some_unique_string male
3 European female
[[ 1. 0. 0. 0. 1.]
[ 0. 1. 0. 1. 0.]
[ 0. 0. 1. 0. 1.]
[ 0. 1. 0. 1. 0.]]
一つの方法を提供します。 Amelia IIのドキュメントには、欠落しているデータの問題とその解決策が詳細に記載されているので、このドキュメントを読むことをお勧めします。さらに、いくつかの平均値を記入することは明らかに悪い考えであり、これに関する文献がいくつかあります。 – Sycorax
@amoeba pandasは、Rの 'data.frame'と' data.table'に似たデータフレーム機能を追加するPythonモジュールです。 – Sycorax
@Sycoraxはい、わかっています。 –