2017-04-26 35 views
4

だから私は、データフレームを持っています次のようなデータフレーム塗りつぶし値は

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

パンダでこれを行うにはどうすればいいですか?

答えて

4
df['easy_peasy'] = df.car.map(car_type) 
4

あなたのdictキーにすべての車名が含まれておらず、欠落している車名にデフォルトのタイプを入力したい場合、これが役に立ちます。さらに詳細

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 
+0

ニース溶液で

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

+1 – jezrael