我需要一些帮助在数据框中形成新变量
我有一个非常大的数据集,我想根据另一列中的现有数据创建一个新变量。
这是一个例子。

>>> df
   A  B
0  a  1
1  b  2
2  c  3
3  a  5
4  d  6


我想用A中的值a和c创建一个新列,并将其命名为ac,将b和d命名为bd
最终结果应该是这样。从A对它们进行分组,然后在新列中为该组赋予新名称。

>>> df
   A  B   C
0  a  1  ac
1  b  2  bd
2  c  3  ac
3  a  5  ac
4  d  6  bd


/乔纳斯

最佳答案

In [4]: mapper = dict(a = 'ac', b = 'bd', c = 'ac', d = 'bd')

In [5]: df['C'] = [ mapper[x] for x in df['A'] ]

In [6]: df
Out[6]:
   A  B   C
0  a  1  ac
1  b  2  bd
2  c  3  ac
3  a  5  ac
4  d  6  bd

09-10 01:47
查看更多