在python中使用numpy简单地添加两个数组?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在python中使用numpy简单地添加两个数组?相关的知识,希望对你有一定的参考价值。
这可能是一个简单的问题。但是,我想澄清以下代码的工作原理。
a = np.arange(8)
a
array([1,2,3,4,5,6,7])
Example Function = a[0:-1]+a[1:]/2.0
在Example Function中,我想提请你注意数组a [0:-1] + a [1:]之间的加号。这是如何运作的?那是什么样的?
例如,加号(加法)是否添加了每个数组的第一个索引? (例如1 + 2)或将所有东西加在一起? (例如1 + 2 + 2 + 3 + 3 + 4 + 4 + 5 + 5 + 6 + 6 + 7)
然后,我假设/2.0只是将其除以2 ...
提前致谢。
Cece
答案
numpy数组使用向量代数,因为如果它们具有相同的尺寸,则只能添加两个数组
a = [1,2,3,4,5]
b = [1,1,1]
a+b # will throw an error
同时
a = [1,2,3,4,5]
b = [1,1,1,1,1]
a+b # is ok
分裂也是逐个元素的。
现在关于索引的问题
a = [1,2,3,4,5]
a[0:-1]= [1,2,3,4]
a[1:] = [2,3,4,5]
或更常见的a[index_start: index_end]
包含在start_index
但在end_index
独家 - 除非你被给予a[start_index:]
,其中包括一切,包括最后一个元素。
我的最后一个提示就是尝试使用结构 - 尝试不同的东西没有任何害处,计算机不会在这里或那里爆发错误的值。除非你当然试图这样做。
另一答案
如果数组具有相同的形状,则可以添加它们:
new_array = first_array.__add__(second_array)
这个简单的操作将first_array中的每个值添加到second_array中的每个值,并将结果放入new_array。
以上是关于在python中使用numpy简单地添加两个数组?的主要内容,如果未能解决你的问题,请参考以下文章
在Python / Numpy / Scipy中找到两个数组之间的插值交集