本文介绍了如何将假人添加到Pandas DataFrame?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个看起来像data_df的
I have a data_df that looks like:
price vehicleType yearOfRegistration gearbox powerPS model kilometer fuelType brand notRepairedDamage postalCode
0 18300 coupe 2011 manuell 190 NaN 125000 diesel audi ja 66954
1 9800 suv 2004 automatik 163 grand 125000 diesel jeep NaN 90480
2 1500 kleinwagen 2001 manuell 75 golf 150000 benzin volkswagen nein 91074
3 3600 kleinwagen 2008 manuell 69 fabia 90000 diesel skoda nein 60437
4 650 limousine 1995 manuell 102 3er 150000 benzin bmw ja 33775
试图将分类列( vehicleType
)转换为虚拟变量(一种热编码"):
Tried to convert classification columns (vehicleType
) to dummies ("one hot encoding"):
columns = [ 'vehicleType' ] #, 'gearbox', 'model', 'fuelType', 'brand', 'notRepairedDamage' ]
for column in columns:
dummies = pd.get_dummies(data_df[column], prefix=column)
data_df.drop(columns=[column], inplace=True)
data_df = data_df.add(dummies, axis='columns')
但是缺少原始数据:
brand fuelType gearbox kilometer model notRepairedDamage ... vehicleType_coupe vehicleType_kleinwagen vehicleType_kombi vehicleType_limousine vehicleType_suv yearOfRegistration
0 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN
1 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN
那么,如何用假人替换给定的列?
So, how to replace a given column with the dummies?
推荐答案
# Get one hot encoding of columns 'vehicleType'
one_hot = pd.get_dummies(data_df['vehicleType'])
# Drop column as it is now encoded
data_df = data_df.drop('vehicleType',axis = 1)
# Join the encoded df
data_df = data_df.join(one_hot)
data_df
这篇关于如何将假人添加到Pandas DataFrame?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!