我的数据框的第一个看法:
temp = df{'assigned to':('user1','user2','user3'),'model':('ipad air 2','galaxy a5', 'ipad air'), 'type':''}
'assigned to' 'model' 'type'
user1 ipad air 2
user2 galaxy a5
user3 ipad air
上面的输入是给定数据的片段,我只添加了列类型。我还使用了一本词典:
dictMobile{'galaxy a5':'samsung galaxy a5','galaxy a6':'samsung galaxy a7'}
使用这个词典,我可以替换temp [' model']中的值,这样命名就行了。现在我还要添加列类型' mobile'如果模型出现在dictMobile或平板电脑中如果它没有出现。
到目前为止我想出的最好的是
if temp['model'] in dictMobile:
temp['Type'] = 'mobile'
else:
temp['Type'] = 'tablet'
但这会让我误以为错误' TypeError:' Series'对象是可变的,因此它们不能被散列'。
之后的结果是:
'assigned to' 'model' 'type'
user1 ipad air 2 tablet
user2 galaxy a5 mobile
user3 ipad air tablet