重置 Series 索引而不转换为 DataFrame

Reset Series index without turning into DataFrame

当我使用 Series.reset_index() 时,我的变量变成了 DataFrame 对象。有什么方法可以重置系列的索引而不会产生这种结果?

上下文是基于概率 (monte carlo sim) 的随机选择的模拟,其中从系列中做出的选择被省略 series.pop(item)

我需要重置索引,因为我要遍历以创建累积频率序列。

您可以在 .reset_index 中尝试 drop=Trueseries.reset_index(drop=True, inplace=True)

根据document

drop : boolean, default False

Do not try to insert index into dataframe columns.

示例:

series = pd.Series([1,2,3,4,5,1,1])
print(series)

系列结果:

0    1
1    2
2    3
3    4
4    5
5    1
6    1
dtype: int64

从系列中选择一些值:

filtered = series[series.values==1]
print(filtered)

结果:

0    1
5    1
6    1
dtype: int64

正在重置索引:

filtered.reset_index(drop=True, inplace=True)
print(filtered)

结果:

0    1
1    1
2    1
dtype: int64

还有type(filtered)还是returnsSeries.