![](/img/trans.png)
[英]How do I parse a sequentially organized multiline string into a data structure using regex/python?
[英]How do i parse data file with similar structure to INI using python?
我有一个包含以下格式的大数据的文件:
[metadata]
metadata1 metadata2 metadata3
[data]
label1 label2 label3
0 0 0
0 0 0
0 0 0
...
我正在尝试加载数据部分以在我的 python 脚本中作为 pandas dataframe 进行处理。
到目前为止,我尝试的是在 excel 中加载文件并将其保存为工作表,然后使用pandas.read_excel()
将其加载到 dataframe 中。
我将不胜感激有关此主题的帮助,谢谢!
我会按照以下方式处理它:打开文件进行读取,使用行直到找到[data]
,将其提供给pandas.read_csv
指定空格作为分隔符。 让file.txt
内容
[metadata]
metadata1 metadata2 metadata3
[data]
label1 label2 label3
0 0 0
0 0 0
0 0 0
然后
import pandas as pd
f = open("file.txt", "r")
while(next(f).strip()!='[data]'):
pass
df = pd.read_csv(f, sep='\s+')
f.close()
print(df)
output
label1 label2 label3
0 0 0 0
1 0 0 0
2 0 0 0
Explanation: tail of file might be considered as csv file with whitespaces as separator, by consuming lines up to [data]
I am seeking to point so what follows is legal csv, then use pandas.read_csv
function. 请注意,如果知道标签行之前的行数,您可能只是利用pandas.read_csv
的skiprows
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.