[英]Fill missing categorial values using pandas?
我想用每列新值填充缺少的分類單元格。 例如:
c1 c2 c3
a nan a
b q nan
c d nan
a p z
應該變得像
c1 c2 c3
a n1 a
b q n2
c d n2
a p z
我目前的問題是我使用DictVectorizer作為分類列,但它按原樣保留NaN。
Fillna有一些uniq字符串可以滿足您的需求:
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.]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.