Я новичок в кодировании, и, поскольку это очень простой вопрос, я знаю, что там должны быть ответы. Тем не менее, я искал около получаса, набирая бесчисленное количество запросов в Google, и все пролетело у меня над головой.
Допустим, у меня есть фрейм данных со столбцами «Имя», «Хобби» и 2 человека. итак 2 ряда. В настоящее время у меня есть хобби в виде строк в виде "hobby1, hobby2". Я хотел бы изменить это на ["hobby1", "hobby2"]
hobbies_as_string = df.iloc[0, 2]
hobbies_as_list = hobbies_as_string.split(',')
df.iloc[0, -2] = hobbies_as_list
Однако это приводит к ошибке, ValueError: Должен иметь равные ключи len и значение при установке с итерацией. Я не понимаю, почему, если я получаю hobbies_as_string как копию, я могу назначить столбец хобби в виде списка без проблем. Я также могу назначить df.iloc [0, -2] в виде строки, например, «Эй», и это прекрасно работает. Я думаю, это связано с ValueError. Почему бы pandas не позволить мне назначить его в виде списка?
Большое спасибо за вашу помощь и объяснения.