Итак, у меня есть это:
df = pd.DataFrame({'array': [[], [], []]})
# need to add an element in index 0
df[df.index==0].array[0].append(1) # works! add 1 to first row
df[df.index==1].array[0].append(2) # doesnt work!
df[df.index==1].array[1].append(2) # works! add 2 to second row
df.array[3].append(10) # works! add 10 to 3rd row
мой вопрос, почему?Я не понимаюЧто если я хочу добавить несколько похожих элементов в несколько списков?
df[df.index>0].array.append(2) # obviously does not work
[Объяснение]
Немного пояснений.Я думаю, что часть проблемы возникает в том, как я создаю свой исходный фрейм данных
# This was how I created it
df = pd.DataFrame({'array': 3 * [[]]})
# It gives different result than this method:
df = pd.DataFrame({'array': [[] for i in range(3)]
# Or this method:
df = pd.DataFrame({'array': [[], [], []] })
Помимо этого, я понял, что это довольно похоже.Ответы здесь дают больше объяснений, чем в связанной ветке.Надеюсь, этот вопрос может остаться.Дайте мне знать, если мне нужно удалить эту ветку, так как я хочу сохранить все ответы и предложения от людей здесь.