我如何将字符串索引转换为整数索引

时间:2021-05-21 03:58:32

标签: python pandas string

数据框:

<头>
迎合 评分
2.5
b 4
c 3
4
2.5
b 4

我想要的:

<头>
迎合 评分 平均
2.5 3.25
b 4 3.5
c 3 3
4 3.25
b 2.5 3.5
b 4 3.5

如何将cater索引转换为整数索引?

1 个答案:

答案 0 :(得分:2)

您需要使用自己的分组版本自行加入您的数据框。这可以通过将 pd.merge() 与您的数据框用作左表变量并将 groupby 数据框用作右表变量来实现。

>>> df
   cater  rating
0      1     2.5
1      2     4.0
2      3     3.0
3      1     4.0
4      2     2.5
5      2     4.0
>>> df2 = df.groupby('cater', as_index=False).mean()
>>> df2
   cater  rating
0      1    3.25
1      2    3.50
2      3    3.00
>>> df3 = pd.merge(df, df2, on='cater', suffixes=('', '_average'))
>>> df3.assign(cater = df3['cater'].map({1:'a',2:'b',3:'c'}))
  cater  rating  rating_average
0     a     2.5            3.25
1     a     4.0            3.25
2     b     4.0            3.50
3     b     2.5            3.50
4     b     4.0            3.50
5     c     3.0            3.00