2017-04-13 159 views
1

我有形状(23,14)的数据帧df1和我创建了一个数据帧df2与形状(23,3)阵列mydata如何获得唯一的行指标的熊猫数据帧

我希望df2的行索引与df1的行索引相同。我该怎么做?

这是我累了:

df2 = pd.DataFrame(data = mydata, index = df1.index) 

,但我得到了以下错误:

Shape of passed values is (23, 3), indices imply (23, 14)

编辑:问题解决了,我有一些方面与以前的代码的问题。这篇文章可以删除。

回答

1

通numpy的值:

df2 = pd.DataFrame(data = mydata.values, index = df1.index) 

与原有的尝试,你传递的DF的数据,因此构造函数将尝试重用DF现有的索引值,通过将其变成一个numpy的阵列匿名数据。

当重用DF的指数,其结果实际上是一个重新索引操作

你也可以这样做:

df2 = mydata.copy() 
df2.index = df1.index 
+0

的* MYDATA *是一个数组(形状(23,3))所以它没有任何属性“值”。我想你误解了这个问题。 – Arthurim

+0

请发布原始数据,您的代码和所需的输出,以避免任何歧义 – EdChum

+0

例如,究竟是什么是mydata它是一个DF,一个numpy数组等... – EdChum