python - Pandas:删除具有唯一索引值的数据帧行

标签 python pandas

我正在尝试删除数据帧(df)中具有唯一值作为索引的行。这是我的 df:

    A       B
1   3.803   4.797
1   3.276   3.878
2   5.181   6.342
3   6.948   9.186
3   8.762  10.136
4  10.672  12.257
4   8.266  13.252
5  13.032  14.656
6  15.021  17.681
6  16.426  15.07

我想删除索引 = 2,5 的行以获得新的数据帧(df_new),如下所示:

    A       B
1   3.803   4.797
1   3.276   3.878
3   6.948   9.186
3   8.762  10.136
4  10.672  12.257
4   8.266  13.252
6  15.021  17.681
6  16.426  15.07

pandas 中有一些方便的函数可以做到这一点吗? 谢谢

最佳答案

使用get_duplicates:

In [36]:
df.loc[df.index.get_duplicates()]

Out[36]:
        A       B
1   3.803   4.797
1   3.276   3.878
3   6.948   9.186
3   8.762  10.136
4  10.672  12.257
4   8.266  13.252
6  15.021  17.681
6  16.426  15.070

get_duplicates 返回重复索引的数组:

In [37]:
df.index.get_duplicates()

Out[37]:
[1, 3, 4, 6]

关于python - Pandas:删除具有唯一索引值的数据帧行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32698057/

相关文章:

python - 找到一组数字的最大子集,使得任何 2 个数字的总和不能被给定数字整除

python - 如何在 python 中提取 avro 文件的模式

python - 如何根据 Pandas 中的列表设置值(python)

python - 如何根据过滤后的总和合并两个 DataFrame?

python - 使用另一个数据帧同一列中的值更新数据帧中的列

python - SPARQLWrapper 不返回 JSON

python - 使用 Pandas 或替代方法比较大量 (~40GB) 文本数据

python - 如何使用 Python Decorator 只改变函数的一部分?

python - sns.Facetgrid 未显示正态分布线并忽略空间警告

python - 从第二个 DF 中快速(矢量化)查找属于相同大小的矩形(由两个点给出)的一个 DF 中的点