gpt4 book ai didi

python - 如何向 Pandas DataFrame 添加虚拟对象?

转载 作者:行者123 更新时间:2023-11-30 08:51:55 24 4
gpt4 key购买 nike

我有一个 data_df,如下所示:

   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)转换为虚拟列(“一个热编码”):

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

那么,如何用虚拟列替换给定的列?

最佳答案

# 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

关于python - 如何向 Pandas DataFrame 添加虚拟对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54757552/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com