gpt4 book ai didi

python - 根据值在数据框的所有行中填充值

转载 作者:太空狗 更新时间:2023-10-30 02:08:22 24 4
gpt4 key购买 nike

所以我有一个数据框如下

   name, car
foo, bmw
bar, audi
baz, tesla
foobaz, bmw

现在我有另一本字典了

car_type = {'bmw': 'gas', 'audi': 'hybrid', 'tesla': 'electric'}

现在,我想向数据框中添加一个新列,如下所示

   name, car, type
foo, bmw, gas
bar, audi, hybric
baz, tesla, electric
foobaz, bmw, gas

我如何在 pandas 中执行此操作?

最佳答案

如果您的字典键不包含所有汽车名称,并且您想用一些默认类型填充缺失的汽车名称,那么这会有所帮助。

df['type'] = df.car.map(lambda x: car_type[x] if x in car_type else 'water')

详情

df['name'] = ['foo', 'bar', 'baz', 'faz', 'zaz']
df['car'] = ['bmw', 'audi', 'tesla', 'bmw', 'skoda']
car_type = {'bmw': 'gas', 'audi': 'hybrid', 'tesla': 'electric'}
df['type1'] = df.car.map(car_type)
df['type2'] = df.car.map(lambda x: car_type[x] if x in car_type else 'water')

打印(df)

  name    car     type1      type2
0 foo bmw gas gas
1 bar audi hybrid hybrid
2 baz tesla electric electric
3 faz bmw gas gas
4 zaz skoda NaN water

关于python - 根据值在数据框的所有行中填充值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43623058/

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