Если значение ячейки по сути список. Как правильно с ним работать?
Отрывок кода с примером primer.txt:
import pandas as pd
df_raw = pd.read_csv('primer.txt', sep='\t', encoding = 'utf-8',low_memory=False)
def naimen_zak_spis(row):
line = row['namen_zak']
line = line.replace('[', '')
line = line.replace(']', '')
line = line.split("', '")
line_result = []
for i in range(2, len(line), 3):
line_result.append(str(line[i]))
return line_result
df_raw['namen_zak_spis'] = df_raw.apply(naimen_zak_spis, axis=1)
df = df_raw.filter(items = ['nomer_zak', 'namen_zak', 'namen_zak_spis', ])
print(df.iloc[0]['namen_zak'])
print('')
print(df.iloc[0]['namen_zak_spis'])
df.head()
В ячейке df_raw['namen_zak'] содержится список, он выглядит как список, но при попытке работать с ним как со списком, ничего не получилось, он воспринимается как строка.
Есть ли возможность работать с ним как со списоком?
То есть в функции обработки naimen_zak_spis выбирать данные с помощью индексов,
например result = line[5], создавать циклы перебора по этому списку.
Сейчас же мне приходится этот список-строку разделять с помощью split
и делать снова списком.
Скажите, что я не учёл? Можно ли, например, задать при импорте тип этого столбика - "список" или есть ли ещё какое либо более четкое решение этой ситуации?
