我正试图将一个MATLAB代码转换为Python,在这里我陷入了如何将这一行导入Python的困境:
YDFA_xa_p = interp1(data(:,1),data(:,2),YDFA_lam_p*1e9,'linear')*1e-24;
现在对于Python,我将其更改为:
YDFA_xa_p = numpy.interp(data[:, 1], data[:, 2], YDFA_lam_p * 1e9) * 1e-24
data[:,1] and data[:,2] and YDFA_lam_p values are:
[ 2. 2. 2. 2. 2. 2. 2. 2. 2. 2.] [ 3. 3. 3. 3. 3. 3. 3. 3. 3. 3.] 915.0
我看到的问题是,变量YDFA_lam_p是一个浮点变量,而它需要一个由10个元素组成的浮点数组?
如果我的理解是正确的,我怎么能纠正它呢?我试过在google上找到的方法,但都不管用。
当我在八度音阶中使用相同的数字时,我会得到一个类似的错误:
你已经给了它一个点(重复地)并且要求它在左边的字段中插入一些值。
正确的示例用法是:
等价的Python(注意变量的不同顺序):
阅读
help(np.interp)
以了解其输入的更多信息。相关问题 更多 >
编程相关推荐