如何在jupyter中用pandas从txt文件中加载某个句子的表格。

问题描述 投票:0回答:1

我试图从一个txt文件中加载一个表格,但我想从某个词开始加载,在这种情况下,这是文件,我想从句子下面的数字开始>>>>>开始......。

enter image description here

我知道关于 skiprows 命令,但并不是所有的表都在同一行开始。

谢谢

python pandas jupyter-lab
1个回答
1
投票

也许不是超级有效的方法来做这件事,但我尝试过滤必要的数据,并附加到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

希望对你有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.