使用空数组填充数据框列

时间:2017-10-27 13:11:11

标签: python pandas numpy dataframe

我需要用空的numpy数组填充pandas数据帧列。我的意思是任何行都必须是一个空数组。像

这样的东西
df['ColumnName'] = np.empty(0,dtype=float)

但这不起作用,因为它试图使用数组的每个值并为每行分配一个值。

我试过了

for k in range(len(df)):
     df['ColumnName'].iloc[k] = np.empty(0,dtype=float)

但仍然没有运气。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您可以将np.empty重复为行数,然后将它们分配给列。由于它不是标量,因此不能像df['x'] = some_scalar那样直接分配。

df = pd.DataFrame({'a':[0,1,2]})

df['c'] = [np.empty(0,dtype=float)]*len(df)

输出:

  a   c
0  0  []
1  1  []
2  2  []