将 headers 变成行

Turn a headers into rows

我正在下载一份报告,其中有多个 'header' 行被数据行分割。我想在 pandas DF 中创建一个新列,它将分配 header 作为每一行的变量。我主要是想知道如何称呼这类问题;在处理设计供人们阅读的报告时似乎相当普遍。

即原创

------Header 1------
data row 1.1
data row 1.2
data row 1.3
------Header 2-------
data row 2.1
data row 2.2
data row 2.3 

converted
header 1, data row 1.1
header 1, data row 1.2
header 1, data row 1.3
header 2, data row 2.1
header 2, data row 2.2
header 2, data row 2.3

如果没有 pandas,我会这样做:

f1 = open("test.txt", "r")

counter = 0
converted = []

for line in f1.readlines():
    if("Header" in line):
        counter+=1
    else:
        converted.append("header "+str(counter)+", "+line)
f1.close()
        
f2 = open('test_converted.txt', 'w') 
f2.writelines(converted) 
f2.close() 

您的原始数据在 test.txt 中,转换后的结果保存到 test_converted.txt