python - 从文本文件创建数据框
问题描述
我有一个文本sample.txt
文件
someText someText
COLUMN1: value1, COLUMN2:value2, COLUMN3: value3
COLUMN1: value11, COLUMN2:value22, COLUMN3: value33
someOtherText someOtherText
someOtherText someOtherText
COLUMN1: value111, COLUMN2:value222, COLUMN3: value333
什么是我可以创建带有标题 COLUMN1、COLUMN2 和 COLUMN3 的数据框并将上面文本中的所有值放入相应列的好方法
提前谢谢了
解决方案
我将从清理数据开始,我的意思是,过滤 txt 文件,使其仅包含您未来的记录
COLUMN1: value1, COLUMN2:value2, COLUMN3: value3
COLUMN1: value11, COLUMN2:value22, COLUMN3: value33
COLUMN1: value111, COLUMN2:value222, COLUMN3: value333
如果您知道这些行将仅包含这些单词(并且顺序相同),那么它是一个很好的起点。接下来是格式化,用一些正则表达式删除所有'COLUMN ...:',然后你有一个csv文件,可以加载到像pandas,spark这样的框架......
value1, value2, value3
value11, value22, value33
value111, value222, value333
请记住,排序对于这种方法很重要。另一种方法是以非常相似的方式转换为 json 文件:
{'COLUMN1': 'value1', 'COLUMN2': 'value2', 'COLUMN3': 'value3'}
引用列名是强制性的,但值可能会根据其类型而有所不同。
推荐阅读
- java - Anylogic - 根据条件阻止和解除阻止
- sulu - 如何在 Sulu 中替换用户/联系表?
- python - 检查数据库中用户的存在(python / sqlite3)
- regex - 负相头与除外的异同
- amazon-cloudformation - 避免用 CloudFormation 替换 TaskDefinition
- python - 使用 OpenCV 将感兴趣区域从 RGB 视频转换为深度视频
- verilog - FIFO 中对 net rddata 的非法引用
- pygame - pygame中的自动声音回响(意外)
- reactjs - 如何将一个文件中定义的变量传输到另一个文件?(React-Native)
- docker - Docker:来自守护进程的错误响应:未能获得摘要 sha256