Python 如何在pandas中的一列中创建词典?

Python 如何在pandas中的一列中创建词典?,python,pandas,Python,Pandas,我想要一个熊猫的空栏。例如,数据['dict']。我希望此列中的每个元素都是空字典。例如: >>> data['dict'] {} {} {} {} 如何编写代码?非常感谢为了避免相同的副本,并在分配值时造成功能问题 df['dict']=df.apply(lambda x : {},axis=1) df Out[730]: 0 1 2 dict 0 a b c {} 1 a NaN b {} 2 NaN t a

我想要一个熊猫的空栏。例如,数据['dict']。我希望此列中的每个元素都是空字典。例如:

>>> data['dict']

{}
{}
{}
{}

如何编写代码?非常感谢

为了避免相同的副本,并在分配值时造成功能问题

df['dict']=df.apply(lambda x : {},axis=1)
df
Out[730]: 
     0    1  2 dict
0    a    b  c   {}
1    a  NaN  b   {}
2  NaN    t  a   {}
3    a    d  b   {}

以避免在指定值时出现相同的复制和特征问题

df['dict']=df.apply(lambda x : {},axis=1)
df
Out[730]: 
     0    1  2 dict
0    a    b  c   {}
1    a  NaN  b   {}
2  NaN    t  a   {}
3    a    d  b   {}

使用列表理解

对于现有数据帧:

df['dict'] = [{} for _ in range(len(df))] 
对于新对象:

pd.DataFrame([{} for _ in range(100)])

需要注意的是,当您在每行、列单元格中使用复杂的Pandas数据结构时,您将失去Pandas对操作进行矢量化的一些功能。

使用列表理解

对于现有数据帧:

df['dict'] = [{} for _ in range(len(df))] 
对于新对象:

pd.DataFrame([{} for _ in range(100)])
需要注意的一点是,当您在每行、每列单元格中使用复杂的Pandas数据结构时,您将失去Pandas对操作进行矢量化的一些功能