如何将numpy数组转换为pandas数据框?

时间:2019-01-14 11:14:56

标签: python pandas numpy

我有一个名为heart_rate的numpy数组,大小为(1181,) 我尝试使用以下代码将其转换为熊猫数据框:

dataset = pd.DataFrame({'Column 1':heart_rate[:,0]})

但是我遇到了以下错误:

  

IndexError:数组的索引过多

1 个答案:

答案 0 :(得分:1)

只需:

dataset = pd.DataFrame({'Column 1':heart_rate})

dataset = pd.DataFrame(heart_rate, columns=['Column 1'])

您的错误是您尝试使用过多的索引器对数组进行切片,这是一维数组

示例:

In[2]:
heart_rate = np.arange(1,10)
heart_rate.shape

Out[2]: (9,)


In[3]:
df = pd.DataFrame(heart_rate, columns=['Column 1'])
df

Out[3]: 
   Column 1
0         1
1         2
2         3
3         4
4         5
5         6
6         7
7         8
8         9

In[4]:
df = pd.DataFrame({'Column 1':heart_rate})
df

Out[4]: 
   Column 1
0         1
1         2
2         3
3         4
4         5
5         6
6         7
7         8
8         9

在这里您可以看到生成错误的是您的切片:

heart_rate[:,0]
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-5-e1eba9de0086> in <module>()
----> 1 heart_rate[:,0]

IndexError: too many indices for array