python数据分析——numpy数组学习
一、数组与标量的运算
在numpy库中支持加减乘除等运算,计算结果为一个新数组
每个元素为标量与原数组中的每个元素进行计算的结果。
注意:标量在前和在后时计算方法是不同的。
import numpy as np
x=np.array((1,2,3))
y=x*2
c=x//2
d=x**2
f=2/x
print(y,c,d,f)
结果:
[2 4 6] [0 1 1] [1 4 9] [2. 1. 0.66666667]
二、数组与数组的运算
对两个等长的数组进行运算后,得到一个新数组,其中每个元素的值为原来的两个数组中对应位置上的元素进行运算的结果。
当数组大小不同时,若符合广播要求就进行广播,否则就进行报错
import numpy as np
x=np.array([1,2,3])
y=np.array([1,2,3])
n=x+y
print(n)
e=np.array([4,5,9],[8,7,6])
u=x*e#不同维度数组相乘,广播
print(u)
结果:
[2 4 6]
Traceback (most recent call last):
File "<ipython-input-8-2868f2ee9059>", line 1, in <module>
runfile('D:/新建文件夹/untitled2.py', wdir='D:/新建文件夹')
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
execfile(filename, namespace)
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "D:/新建文件夹/untitled2.py", line 13, in <module>
e=np.array([4,5,9],[8,7,6])
TypeError: data type not understood