为了账号安全,请及时绑定邮箱和手机立即绑定

清理熊猫数据框中的单列

清理熊猫数据框中的单列

慕勒3428872 2021-11-16 16:15:26
将 CSV 作为 Pandas 数据框导入并删除所有完全空的列:import pandas as pd df1 = pd.read_csv("name.csv") df1 = df1.dropna(axis=1,how='all')唉,一列看起来像:'Background\r\n * find it: IDE-3: Some Name\r\n * Dokument: SomeName.pptx\r\n * Field: TEG-33\r\n  * happy: Done\r\n\r\nh3. Definition\r\n\r\n\xa0tbd.\r\nh3. exists\r\n\r\ncsv\r\nh3. Source\r\n\r\ncsv?\r\n\r\npotentiell?\r\n\r\ntbd\r\nh3. task\r\n\r\ntbd\r\n\r\n\xa0'问题 1:我想删除所有 \r\n 和 \r\n\r\ 和 \r\n\r\n\ 和 \r\n\r\n\xa0 等。任何人都可以帮助使用正则表达式? 我找不到清晰的模式。问题 2:首先如何防止在将 CSV 导入 Pandas 数据框时写入所有这些各种形式的 \r\n\r\(参见问题 2)?清理数据框中提到的列的所有行后,最终结果应该是(Python 3,Anaconda3 分发版,在 Windows 10 上)
查看完整描述

2 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

对于问题 1:


(df1['Column 3']

.str.replace('\r','')

.str.replace('\n','')

.str.replace('\xa0', ''))

对于问题 2:您可以在数据进入 csv 时对其进行清理 - 但在不知道数据来自何处的情况下很难说!


查看完整回答
反对 回复 2021-11-16
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

问题 1

这个正则表达式将实现你想要的:


(\r\n)+(\r)*(\xa0)*

解释:


(\r\n)+  # One or more copies of '\r\n'

(\r)*    # Any extra appended    '\r'

(\xa0)*  # Any final appended    '\xao'

但请注意,在您的示例中,没有\r\n...\rie形式的字符串,最后附加了\r.


查看完整回答
反对 回复 2021-11-16
  • 2 回答
  • 0 关注
  • 169 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信