Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在尝试合并两个Aray时,我在numpy中遇到了一个类型问题_Python_Python 3.x_Numpy - Fatal编程技术网

Python 在尝试合并两个Aray时,我在numpy中遇到了一个类型问题

Python 在尝试合并两个Aray时,我在numpy中遇到了一个类型问题,python,python-3.x,numpy,Python,Python 3.x,Numpy,当我尝试: data_f = hstack([data,Ki]) 我得到: TypeError:“列表”对象不可调用 我徒劳地“搜索”了一下,结果一无所获。我错过了什么 我已成功创建了要合并的两个阵列: data = [] data = np.vstack([data1,data2,data3,data4,data5,data6,data7,data8,data9,data10]) A = [] A = data[:,1] Ki = [] Ki = np.exp((1000*A)/(Rca

当我尝试:

data_f = hstack([data,Ki])
我得到:

TypeError:“列表”对象不可调用

我徒劳地“搜索”了一下,结果一无所获。我错过了什么

我已成功创建了要合并的两个阵列:

data = []
data = np.vstack([data1,data2,data3,data4,data5,data6,data7,data8,data9,data10])

A = []
A = data[:,1]

Ki = []
Ki = np.exp((1000*A)/(Rcal*Tk))

name_s = name+'_Ki'
np.savetxt(name_s,[A],newline='\n',delimiter = ' ')

data_f = []

hstack = []
data_f = hstack([data,Ki])
请, 他们清楚地解释了
hstack()
想要 形状相似的数据数组的元组。 你没有提供这些

仔细检查
数据
Ki
, 以确保它们具有相似的
。形状

编辑

下面是调用
hstack()
的示例:

请注意,仅将
a
设置为
np.array(范围(3))
将不起作用。 要了解原因,请查看
.shape

这些表达式中的一个。

一个函数是
可调用的
,并且
()
调用
,就像你用
hstack(…)
做的那样。但是您定义了一个列表
hstack=[]
,所有这些
x=[]
语句在Python中都是不必要的。仅当您进入modify
x
时使用该选项,如使用
x.append('foobar')
。在Python中,变量不需要“初始化”。只需分配真正有用的对象,就像分配
data=np.vstack(…)
一样。您为什么使用
np.vstack
而不是
np.hstack
?谢谢您的回复。我使用vstack成功地创建了数据结构。问题在于使用hstack(最后一行是上面的代码片段)时,我将最后一行更改为读取data_f=np.hstack([data,K1])。现在的错误是“ValueError:所有输入数组必须具有相同数量的维度”。那么两个输入的维度是什么,
data
K1
?当你在尺寸和形状方面出错时,首先要做的是检查(打印)数组的形状。谢谢你的博学解释。我最初的问题是数据是维度为(100,40)的float64数组,Ki是维度为(100,1)的float64数组.也许在我80年的阅读生涯中,我不明白参考文献在说什么。我真的不知道这个问题的解决方案可能是什么。也许你本地的C:drive上有这样的文字,但我看不懂。当然,你在问题中没有这样说。好吧,那是一个满脸通红的人!列堆栈解决了感谢numpy-user-1.19.1.pdf解决了这个问题。
>>> a = np.array(range(3)).reshape(3, 1)
>>> b = np.array(range(12)).reshape(3, 4)
>>> a.shape, b.shape
((3, 1), (3, 4))
>>> np.hstack((a, b))
array([[ 0,  0,  1,  2,  3],
       [ 1,  4,  5,  6,  7],
       [ 2,  8,  9, 10, 11]])