我需要用空的numpy数组填充pandas数据帧列。我的意思是任何行都必须是一个空数组。像
这样的东西df['ColumnName'] = np.empty(0,dtype=float)
但这不起作用,因为它试图使用数组的每个值并为每行分配一个值。
我试过了
for k in range(len(df)):
df['ColumnName'].iloc[k] = np.empty(0,dtype=float)
但仍然没有运气。有什么建议吗?
答案 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 []