Pandas Python inserem lista em uma célula

Eu tenho uma lista 'abc' e um dataframe 'df':

abc = ['foo', 'bar']
df =
    A  B
0  12  NaN
1  23  NaN

Eu quero inserir a lista na célula 1B, então eu quero este resultado:

    A  B
0  12  NaN
1  23  ['foo', 'bar']

Como posso fazer isso?

1) Se eu usar isso:

df.ix[1,'B'] = abc

Eu recebi a seguinte mensagem de erro:

ValueError: Must have equal len keys and value when setting with an iterable

porque tenta inserir a lista (que possui dois elementos) em uma linha / coluna, mas não em uma célula.

2) Se eu usar isso:

df.ix[1,'B'] = [abc]

em seguida, insere uma lista que possui apenas um elemento que é a lista 'abc' ([['foo', 'bar']] )

3) Se eu usar isso:

df.ix[1,'B'] = ', '.join(abc)

então ele insere uma string: (foo, bar ) mas não uma lista.

4) Se eu usar isso:

df.ix[1,'B'] = [', '.join(abc)]

depois, ele insere uma lista, mas possui apenas um elemento (['foo, bar'] ), mas não dois como eu quero (['foo', 'bar'] )

Obrigado pela ajuda!

EDITAR

Meu novo quadro de dados e a lista antiga:

abc = ['foo', 'bar']
df2 =
    A    B         C
0  12  NaN      'bla'
1  23  NaN  'bla bla'

Outro quadro de dados:

df3 =
    A    B         C                    D
0  12  NaN      'bla'  ['item1', 'item2']
1  23  NaN  'bla bla'        [11, 12, 13]

Quero inserir a lista 'abc' emdf2.loc[1,'B'] e / oudf3.loc[1,'B'].

Se o quadro de dados tiver colunas apenas com valores inteiros e / ou NaN e / ou valores de lista, a inserção de uma lista em uma célula funcionará perfeitamente. Se o quadro de dados tiver colunas apenas com valores de sequência e / ou valores de NaN e / ou valores de lista, a inserção de uma lista em uma célula funcionará perfeitamente. Mas se o dataframe tiver colunas com valores inteiros e de string e outras colunas, a mensagem de erro será exibida se eu usar isso:df2.loc[1,'B'] = abc oudf3.loc[1,'B'] = abc.

Outro quadro de dados:

df4 =
          A     B
0      'bla'  NaN
1  'bla bla'  NaN

Essas inserções funcionam perfeitamente:df.loc[1,'B'] = abc oudf4.loc[1,'B'] = abc.

questionAnswers(4)

yourAnswerToTheQuestion