python - Pandas 根据条件提取行,但保留旧行索引
问题描述
根据特定条件提取行时,我丢失了旧的行索引。
我有一个带有数值列的 pandas 数据框,我根据以下条件提取所有行:
df = df.loc[df['column_name'] <= 1]
提取成功,但新数据框现在具有新的行索引。
如何保留旧索引?
解决方案
我刚刚试图重现你的问题。我相信您正在尝试执行以下操作
df = pd.DataFrame({'column_name':[1,2,3,1,2,3,1,1,0,1]})
df.head(10)
产生如下输出
column_name
0 1
1 2
2 3
3 1
4 2
5 3
6 1
7 1
8 0
9 1
一旦我运行你建议的代码df = df.loc[df['column_name']<=1]
,我就得到了这个df.head(10)
column_name
0 1
3 1
6 1
7 1
8 0
9 1
这似乎有较旧的索引。在 pandas 中,您需要重置索引以获取新索引,否则它不会自动执行。
推荐阅读
- c++ - 在保留顺序函数的同时删除向量中的重复项的逻辑错误
- hyperledger-fabric - Cli 服务可以存在于安装在不同机器(Hyperledger Fabric)中的每个组织上吗?
- java - 如何模拟 IMPLY 门?
- neo4j - 由于 Neo4J 中缺少属性,连接不起作用
- amazon-web-services - S3 和 CloudFront 上的静态网站——如何隐藏网站的非产品版本
- python - 在某些迭代中在整个列表中迭代元素时,旧元素保留在新列表中
- windows - 如何提及 %10 及更高版本?
- python - 如何遍历文件夹并从分组的子文件夹中获取某些文件?
- sass - SASS:@extend 在(嵌套的)伪类中
- angular - Angular unix时间戳获取日期,日期和时间