时间:2021-05-22
直接使用Python来实现向量的相加
# -*-coding:utf-8-*-#向量相加def pythonsum(n): a = range(n) b = range(n) c = [] for i in range(len(a)): a[i] = i**2 b[i] = i**3 c.append(a[i]+b[i]) return a,b,cprint pythonsum(4),type(pythonsum(4))for arg in pythonsum(4): print arg从这里这个输出结果可以看得出来,return多个值时,是以列表的形式返回的
([0, 1, 4, 9], [0, 1, 8, 27], [0, 2, 12, 36]) <type 'tuple'>[0, 1, 4, 9][0, 1, 8, 27][0, 2, 12, 36]使用numpy包实现两个向量的相加
def numpysum(n): a = np.arange(n) ** 2 b = np.arange(n) ** 3 c = a + b return a,b,c(array([0, 1, 4, 9]), array([ 0, 1, 8, 27]), array([ 0, 2, 12, 36])) <type 'function'>[0 1 4 9][ 0 1 8 27][ 0 2 12 36]比较用Python实现两个向量相加和用numpy实现两个向量相加的情况
size = 1000start = datetime.now()c = pythonsum(size)delta = datetime.now() - start# print 'The last 2 elements of the sum',c[-2:]print 'pythonSum elapsed time in microseconds',delta.microsecondssize = 1000start1 = datetime.now()c1 = numpysum(size)delta1 = datetime.now() - start1# print 'The last 2 elements of the sum',c1[-2:]print 'numpySum elapsed time in microseconds',delta1.microseconds从下面程序运行结果我们可以看到在处理向量是numpy要比Python计算高出不知道多少倍
pythonSum elapsed time in microseconds 1000numpySum elapsed time in microseconds 0以上这篇关于Python中的向量相加和numpy中的向量相加效率对比就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在R语言中,不同长度的向量也是可以相加和相乘的,乘法的规则和加法类似1,相同长度的向量相加>xyzz[1]2468规则就是x[1]+y[1],x[2]+y[2]
numpy包(模块)几乎总是用于Python中的数值计算。这个软件包为Python提供了高性能的向量、矩阵、张量数据类型。它是在C和Fortran中创建的,因此
计算PythonNumpy向量之间的欧氏距离,已知vec1和vec2是两个Numpy向量,欧氏距离计算如下:importnumpydist=numpy.sqrt
前言在python中有时候我们用数组操作数据可以极大的提升数据的处理效率,类似于R的向量化操作,是的数据的操作趋于简单化,在python中是使用numpy模块可
一、图像的加法图像相加可以直接利用numpy模块进行相加,也可以采用opencv里面函数进行相加,注意事项:相加的图像类型、大小必须相同具体代码如下:#-*-c