Я итеративно читаю файл журнала и анализирует/извлекает данные и хотел бы добавить это к файловому кадру.Как добавить список в виде строки в pandas.DataFrame()?
df = pd.DataFrame([], columns=['item','price','qty','sold'])
with open("mylogfile") as fh:
for line in fh:
data = extract_data(line)
df.append(data) ## ?
def extract_data(line):
# parse and get values as a list
return list_values
Update: я получаю следующее сообщение об ошибке: ValueError: Форма переданных значений (0, 0), индексы следует (4, 0)
Кроме того, Мой лог-файл содержит данные в формат
item,2,price,4.5,qty,17,sold,11
item,12,price,14.5,qty,7,sold,4
item,2,price,4.5,qty,13,sold,2
Edit2: (фактический файл, и я заинтересован только в строке 'пункт'
item,2,price,4.5,qty,17,sold,11
a,12,b,14,c,18,d,15,e16
item,12,price,14.5,qty,7,sold,4
x,4,y,1,z,81
a,12,b,14,c,18,d,15,e16
a,14,b,11,c,8,d,51,e26
item,2,price,4.5,qty,13,sold,2
x,14,y,11,z,8
В чем проблема? Не работает ли код выше? – Bensciens
Пожалуйста, разместите данные, которые воспроизводят вашу ошибку, в основном вам нужно вернуть либо серию, либо DataFrame для добавления к существующему df, также это ужасно неэффективно, каков формат ваших данных? Вероятно, вы можете использовать любой из существующих методов для его чтения и создать df один раз: http://pandas.pydata.org/pandas-docs/stable/io.html – EdChum