【发布时间】:2020-02-20 12:55:55
【问题描述】:
假设我有一个包含三列分类数据的数据框,我想将三个分类列转换为单个值并映射到原始数据框。我知道这可以通过带有this 的单列来实现,但是多列呢?
例子:从这个
>>>df = pd.DataFrame({'id':['0', '1', '2', '3','4'],
... 'x':['tall', 'short', 'tall', 'short', 'tall'],
... 'y':['fat', 'thin', 'thin', 'fat', 'fat'],
... 'z':['male', 'female', 'female', 'male', 'male']},
... dtype='category')
>>>df
id x y z
0 0 tall fat male
1 1 short thin female
2 2 tall thin female
3 3 short fat male
4 4 tall fat male
通过与列进行映射:x、y 和 z
>>>df
id x y z map
0 0 tall fat male 0
1 1 short thin female 1
2 2 tall thin female 2
3 3 short fat male 3
4 4 tall fat male 0
【问题讨论】: