# 魔法指令:打印工作目录(print working directory)
%pwd
# 'C:\\Users\\24474\\Desktop\\DataAnalysis'
# 魔法指令:列出当前文件夹下的内容(list directory contents)
%ls
# 列出所有的魔法指令
%lsmagic
# 调用系统命令
!pip install pillow
# Requirement already satisfied: pillow in c:\anaconda\lib\site-packages (8.0.1)
array14 = np.arange(1, 10).reshape(3, 3)
array14
"""
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
"""
for value in array14.flat:
print(value)
"""
1
2
3
4
5
6
7
8
9
"""
array14.flatten()
# array([1, 2, 3, 4, 5, 6, 7, 8, 9])
数组里的每一项,都是从开始到当前项的和的值
array([ 1, 3, 6, 10, 15, 21, 28, 36, 45], dtype=int32)
# array([ 1, 3, 6, 10, 15, 21, 28, 36, 45], dtype=int32)
数组里的每一项,都是从开始到当前项的乘积的值
array14.cumprod()
# array([ 1, 2, 6, 24, 120, 720, 5040, 40320,
362880], dtype=int32)
array14.argmax() #8
array14.argmin() #0
array14.swapaxes(1, 0)
"""
array([[1, 4, 7],
[2, 5, 8],
[3, 6, 9]])
"""
array14.transpose()
"""
array([[1, 4, 7],
[2, 5, 8],
[3, 6, 9]])
"""
array15 = np.random.randint(10, 100, 10)
array15
# array([28, 61, 76, 87, 26, 32, 90, 29, 16, 16])
print(array15.sum(),np.sum(array15))
print(array15.mean(),np.mean(array15))
print(array15.std(),np.std(array15))
print(array15.var(),np.var(array15))
"""
461 461
46.1 46.1
27.840438214941948 27.840438214941948
775.0899999999999 775.0899999999999
"""
array16 = np.array([1, 2, 3, 4, 5])
array16 ** 2 #array([ 1, 4, 9, 16, 25], dtype=int32)
array17 = np.array([3, 5, 2, 2, 1])
array16 + array17 #array([4, 7, 5, 6, 6])
array16 ** array17 #array([ 1, 32, 9, 16, 5], dtype=int32)
array18 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
array19 = np.array([[1, 1, 1], [2, 2, 2], [3, 3, 3]])
array18 * array19
"""
array([[ 1, 2, 3],
[ 8, 10, 12],
[21, 24, 27]])
"""
当两个形状不一样的数组进行运算时,NumPy会应用广播机制试图让两个数组的形状变得一致。
广播机制就是让数组扩展自身的一种机制,通过扩展可以让形状不同的数组变得形状相同。
但是,应用广播机制是有前提条件的:两个数组的后缘维度(shape属性的最后一个值)相同或者其中一个数组后缘维度为1,应用了广播机制以后,如果两个数组形状可以达到一致,就可以做运算;如果应用了广播机制,两个数组的形状还不能达成一致就无法做运算。
array18
"""
[[1 2 3]
[4 5 6]
[7 8 9]]
"""
array20=np.array([1,1,1])
array18+array20
"""
array([[ 2, 3, 4],
[ 5, 6, 7],
[ 8, 9, 10]])
"""
array21=np.array([1],[2],[3])
array21
"""
array([[1],
[2],
[3]])
"""
array18 + array21
"""
array([[ 2, 3, 4],
[ 6, 7, 8],
[10, 11, 12]])
"""
NumPy中提供了非常多的用于数组运算的函数。
x=np.linspace(-2*np.pi,2*np.pi,80)
y1=np.sin(x)
y2=np.cos(x)
plt.plot(x,y1,marker='o',color='r')
plt.plot(x,y2,marker='x',color='b')
plt.show()