【发布时间】:2018-11-04 04:50:14
【问题描述】:
要从 numpy 创建一个 pandas 数据框,我可以使用:
columns = ['1','2']
data = np.array([[1,2] , [1,5] , [2,3]])
df_1 = pd.DataFrame(data,columns=columns)
df_1
如果我改为使用:
columns = ['1','2']
data = np.array([[1,2,2] , [1,5,3]])
df_1 = pd.DataFrame(data,columns=columns)
df_1
每个数组都是一列数据。但这会引发错误:
ValueError: Wrong number of items passed 3, placement implies 2
pandas 是否支持这种数据格式,还是我必须使用示例 1 中的格式?
【问题讨论】:
-
答案很简单。 Numpy 将 数组存储为行向量(!),在错误的示例中,您传递了具有 3 个值的两行,而您只有 2 列。在第一个示例中,您传递 3 行 2 个值和 2 列,这是有效的!
标签: python arrays pandas numpy