首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python清理数据框行

Python清理数据框行
EN

Stack Overflow用户
提问于 2021-06-21 16:04:18
回答 1查看 26关注 0票数 0

我有一个数据框,看起来像我在下面制作的一个虚拟数据框。我从一个excel表格中提取了这些数据,并且我需要清理数据集。更具体地说,我希望保留'Col_1‘上有数字的行。在这种情况下,它将保留索引0-1的行,并删除索引0-1之后的所有行。

代码语言:javascript
运行
复制
                    Col_1 Col_2     Col_3
0                   09374     7  Company1
1                   09374     6  Company2
2                   09374     3  Company3
3                     nan   nan       nan
4                     nan   nan       nan
5                     nan   nan       nan
6                     nan   nan       nan
7           Time 00:19...   nan       nan

我知道如何删除具有指定条件的行,这不是我面临的挑战,encountering.The挑战是我需要假设Col_1或任何其他列中的数据类型可以切换到其他excel文件。因此,在确定要删除哪些行时,代码需要灵活。例如,如果我写的代码只保留可以转换为整数的'Col_1‘中的值(如果'Col_1’中的值总是被假定为数字,我就会采用这种方法),那么如果'Col_1‘中的值被假定为其他excel文件中的字符,代码就可以工作。例如..。

代码语言:javascript
运行
复制
                    Col_1 Col_2     Col_3
0                   a0be3     7  Company1
1                   a0be3     6  Company2
2                   a0be3     3  Company3
3                     nan   nan       nan
4                     nan   nan       nan
5                     nan   nan       nan
6                     nan   nan       nan
7           Time 00:19...   nan       nan

我也不想引用NaN的值,因为可能存在不包含任何NaN值的excel工作表。

如何使代码更灵活,使其始终知道要删除哪些行,而不管列中的值是什么类型?此外,如果有任何方法可以让我不必使用循环,那就太棒了。

EN

回答 1

Stack Overflow用户

发布于 2021-06-21 16:16:44

您可以使用.loc并按.notna()选择for Col_1 not n/a,如下所示:

代码语言:javascript
运行
复制
df.loc[df['Col_1'].notna()]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68064420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档