Я не думаю, что вы сможете прочитать этот текстовый файл непосредственно в pandas DataFrame
без предварительной обработки. Одним из способов было бы преобразовать ваш ввод в формат pandas records
, то есть список словарей, например, так:
[{'Hypothesis': 'drink', 'Reference': 'Drake', 'WER': '100.0', 'Time': '2.416645050048828'},
{'Hypothesis': 'Ed Sheeran','Reference': 'Ed Sheeran', 'WER': '0.0', 'Time': '2.854194164276123'}]
Я попробовал следующий код, и он работает для меня (я скопировал ваш пример текста файл):
import pandas as pd
records = []
with open ("/home/kolagaza/Desktop/IAIS_en.txt", "r") as fh:
# remove blank lines and whitespaces
lines = [line.strip() for line in fh.readlines() if line != "\n"]
# this next line creates a list where each element will represent one line in the final dataframe
lines = ",".join(lines).replace(':,', ':').split('"---------------------------"')
# now convert each line into a record
for line in lines:
record = {}
for keyval in line.split(','):
if len(keyval) > 0:
key, val = keyval.split(':')
record[key] = val
records.append(record)
df = pd.DataFrame(records)