我试图从一个txt文件中加载一个表格,但我想从某个词开始加载,在这种情况下,这是文件,我想从句子下面的数字开始>>>>>开始......。
我知道关于 skiprows
命令,但并不是所有的表都在同一行开始。
谢谢
也许不是超级有效的方法来做这件事,但我尝试过滤必要的数据,并附加到DF使用下面的脚本。
import re
import os
import pandas as pd
def foo(file_name):
# create empty df
df = pd.DataFrame(columns=list('ab'))
pat = r'>+[a-zA-Z ]*<+'
pat2 = r'[-0-9.]*'
start_save_to_df = False
# set path
with open(os.path.join(os.getcwd(),'src',file_name)) as f:
for row in f.readlines():
if start_save_to_df:
val1, val2 = [float(val) for val in re.findall(pat2, row) if val]
# append data
df = df.append({'a': val1, 'b': val2}, ignore_index=True)
if re.search(pat, row):
start_save_to_df = True
return df
希望对你有所帮助。