将后缀附加到pandas系列索引

时间:2017-09-19 18:13:02

标签: python string pandas series

鉴于以下熊猫系列:

>>>series = pd.Series([1, 2, 3], index=["a", "b", "c"])
>>>series
a   1
b   2
c   3
dtype: int64

有没有办法产生这个?

>>>series.do_something()
a_x   1
b_x   2
c_x   3
dtype: int64

背景

我有一个由DataFrame聚合函数生成的系列:df.sum()

索引当前是列名,但我希望它们是列名加_sum,如下所示:

>>>data
col1_sum   500.00
col2_sum   9324.0
col3_sum   0.2340
dtype: float64

3 个答案:

答案 0 :(得分:6)

In [49]: series.index += '_sum'

In [50]: series
Out[50]:
a_sum    1
b_sum    2
c_sum    3
dtype: int64

答案 1 :(得分:3)

也许series.add_suffix('_x')符合您的需求!

series.add_prefix('x_')会返回类似这样的内容:

x_a    1
x_b    2
x_c    3
dtype: int64

答案 2 :(得分:1)

为完整起见,您可以使用str.replace

s.index = s.index.str.replace('(.*)', r'\1_sum') 

print(s)
a_sum    1
b_sum    2
c_sum    3
dtype: int64