После исчерпывающего поиска и попытки заставить его работать ... вот и я.
Резюме того, что мне нужно: мне нужно создавать и читать файлы CSV, чтобы я мог свободно манипулировать данными из файлов,Например:
row1 = {"col1": "value1", "col2": 0.5, "col3": [{"key1": 0.2}, {"key2": 0.3}]
df = pandas.DataFrame(row1, columns=["col1", "col2", "col3"]
df.to_csv("test.csv")
Файл, который я получаю, выглядит так:
col1 col2 col3
0 value1 0.5 [{'key1': 0.2}, {'key2': 0.3}]
После этого я могу прочитать файл с:
df = pandas.read_csv("test.csv")
Проблемыприходят с такими случаями, как col3
.Я глупо думал, что когда я преобразую фрейм данных:
df = list(df.T.to_dict().values())
, я смогу получить доступ к col3
с помощью:
for row in df:
wanted_data = row["col3"]
Я думал, что получу список с двумя словарями в нем,На самом деле я получаю строку.
Как я могу получить доступ к key1
, key2
(ключи разные) и их соответствующим значениям?Я уже пробовал с:
json.loads(wanted_data)
Но независимо от того, что я делаю, я получаю такие ошибки:
Traceback (most recent call last):
File "<pyshell#230>", line 1, in <module>
now("tst_2.csv")
File "D:\test_DUAL_up_to_RoleMap_official_edition - Copy\kb_test_manipulation.py", line 84, in now
res = json.loads(new_supercl)
File "C:\Users\NOTEBOOK2\AppData\Local\Programs\Python\Python35-32\lib\json\__init__.py", line 319, in loads
return _default_decoder.decode(s)
File "C:\Users\NOTEBOOK2\AppData\Local\Programs\Python\Python35-32\lib\json\decoder.py", line 339, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\NOTEBOOK2\AppData\Local\Programs\Python\Python35-32\lib\json\decoder.py", line 355, in raw_decode
obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 3 (char 2)
Любые идеи, как я должен хранить и /или читать данные, чтобы я мог правильно получить доступ к col3
?