Python,hstack不同类型的列numpy数组(列向量)
我现在有一个多维的numpy数组(类型是浮点数),还有一个numpy的列数组(类型是整数)。我想把这两个数组合并成一个多维的numpy数组。
import numpy
>> dates.shape
(1251,)
>> data.shape
(1251,10)
>> test = numpy.hstack((dates, data))
ValueError: all the input arrays must have same number of dimensions
为了说明这两个数组的类型是不同的:
>> type(dates[0])
<type 'numpy.int64'>
>> type(data[0,0])
<type 'numpy.float64'>
3 个回答
0
这行代码的意思是,把两个东西横着拼在一起。这里用的是一个叫做`numpy`的工具,它是用来处理数字和数组的。
具体来说,`dates[:,numpy.newaxis]`是把`dates`这个数组的形状变得更适合拼接,而`data`是另一个数组。`numpy.hstack`这个函数就是用来把这两个数组横着合并成一个新的数组。
简单来说,就是把日期和数据放在一起,形成一个新的表格,方便后续处理。
1
类型并不重要,你应该把日期的形状调整为(1251, 1)再使用hstack。
另外,整数会被转换成浮点数。
11
import numpy as np
np.column_stack((dates, data))
这些类型会自动转换成最精确的类型,所以你的整型数组会被转换成浮点型。