python - 删除 Pandas 系列中的行并清理索引

标签 python pandas series

我有一个 Pandas 系列,基于一个随机数,我想选择一行(下面的代码示例中为 5)并删除该行。删除行后,我想为剩余的行(0 到 8)创建一个新索引。代码如下:

print 'Original series: ', sample_mean_series
print 'Length of original series', len(sample_mean_series)
sample_mean_series = sample_mean_series.drop([5],axis=0)
print 'Series with item 5 dropped: ', sample_mean_series
print 'Length of modified series:', len(sample_mean_series)
print sample_mean_series.reindex(range(len(sample_mean_series)))

这是输出:

Original series:  
0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
5   -0.000051
6    0.000125
7   -0.000108
8   -0.000009
9   -0.000052
Length of original series 10
Series with item 5 dropped:  
0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
6    0.000125
7   -0.000108
8   -0.000009
9   -0.000052
Length of modified series: 9
0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
5         NaN
6    0.000125
7   -0.000108
8   -0.000009

我的问题是第 8 行被删除了。我想删除行“5 NaN”并保留索引为 0 到 8 的 -0.000052。我希望它看起来像这样:

0    0.000074
1   -0.000067
2    0.000076
3   -0.000017
4   -0.000038
5    0.000125
6   -0.000108
7   -0.000009
8   -0.000052

最佳答案

有点令人困惑,reindex 并不意味着“创建新索引”。要创建新索引,只需分配给 index 属性即可。所以在最后一步,只需执行 sample_mean_series.index = range(len(sample_mean_series))

关于python - 删除 Pandas 系列中的行并清理索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14487562/

相关文章:

python - Anaconda如何导入keras-rl

python - AWS S3 存储桶 Django 3.0 用户配置文件图像上传访问错误

python - 将 pandas DataFrame 与 NaN 合并以查找缺失行

python - 如何有效地将多个 pandas 列组合成一个类似数组的列?

python - Pandas :在列表的数据框列中索引每个列表的第一个元素

python - 属性错误 : 'Series' object has no attribute 'searchsorted' pandas

python - 更新 Pandas - 无法导入名称 'hashtable'

python - 如何用 PyGame 绘制矩形轮廓(未填充)?

python - 具有阶跃函数的聚合加权和

python - 从 Pandas 数据框中绘制累积图表?