Pandas 读取带分隔符的 txt 文件的一部分

Pandas read part of a delimited txt file

所以我有一个地震实验机输出的txt文件:

23      (-9.144,  2.7432,  0) [HybridDamper/Floor 1 Disp m,--,--] #ffffff
24      (-4.572,  0,       0) #ffffff
# End Node section
===
# Begin Member section
gl gr #eeeeee
23 D1 yellow

所以有一个#End Node section,===,#Begin Member section将输出的两部分分开。 我想创建两个数据框,一个用于上面的部分,另一个用于下面的部分。

在不手动编辑机器输出文件的情况下(当结构很大时不容易),是否可以让pandas识别部分分隔符(例如,这些行从#,=开始)来自 .txt 文件?

谢谢大家! 最好 肖恩

from io import StringIO
import pandas as pd

with open('mytext.txt') as f:
    txt = f.read()

marker = '# End Node section\n===\n# Begin Member section'
txt1, txt2 = txt.split(marker)

df1 = pd.read_csv(StringIO(txt1), header=None, sep='|')
df2 = pd.read_csv(StringIO(txt2), header=None, sep='\s+', engine='python')