import numpy as np
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1)
print(type(arr1))
arr2 = np.array([1.0, 2.0, 3.0])
print(arr2)
print(type(arr2))
arr3 = np.array([1, 2, 3])
arr3[1] = 3.14
print(arr3)
arr4 = np.array([1.0, 2.0, 3.0])
arr4[1] = 3
print(arr4)
arr1_float = arr1.astype(float)
print(arr1_float)
arr2_int = arr2.astype(int)
print(arr2_int)
print(arr2_int + 4.0)
print(arr2_int * 1.0)
print(arr2_int / 1)
print(arr2_int + [1.0, 2.0, 3.0])
arr5_1 = np.zeros(3)
arr5_2 = np.zeros((1, 3))
arr5_3 = np.zeros((1, 1, 3))
print(arr5_1)
print(arr5_2)
print(arr5_3)
print(arr5_1.shape)
print(arr5_2.shape)
print(arr5_3.shape)
arr6 = np.arange(10)
print(arr6)
print(arr6.reshape((1, -1)))
arr7 = np.arange(10).reshape(2, 5)
print(arr7)
print(arr7.reshape(-1))
arr8 = np.array([1, 2, 3])
print(arr8)
arr9 = np.array([[1, 2, 3]])
print(arr9)
arr10 = np.array([[1], [2], [3]])
print(arr10)
arr11 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr11)
arr12 = np.arange(10)
print(arr12)
arr13 = np.arange(10, 20)
print(arr13)
arr14 = np.arange(1, 20, 2)
print(arr14)
arr15 = np.zeros((1, 3))
print(arr15)
arr16 = np.ones((2, 3))
print(arr16)
arr17 = 3.14 * np.ones((2, 3))
print(arr17)
arr18 = np.random.random(5)
print(arr18)
arr19 = np.random.randint(10, 100, (1, 15))
print(arr19)
arr20 = np.random.normal(0, 1, (2, 3))
print(arr20)
arr21 = np.random.randn(2, 3)
print(arr21)
arr22 = np.arange(1, 10)
print(arr22)
print(arr22[0])
print(arr22[-1])
arr22[1] = 100
print(arr22)
arr23 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr23)
print(arr23[0, 2])
print(arr23[1, -1])
arr23[0, 2] = 100
print(arr23)
arr24 = np.arange(1, 100, 10)
print(arr24)
print(arr24[[0, 2]])
arr25 = np.arange(1, 17).reshape(4, 4)
print(arr25)
print(arr25[[0, 1], [0, 1]])
print(arr25[[0, 1, 2], [0, 1, 2]])
arr25[[0, 1, 2], [0, 1, 2]] = 100
print(arr25)
arr26 = np.arange(1, 10)
print(arr26)
print(arr26[0:1])
print(arr26[1:])
print(arr26[:])
print(arr26[2:-2])
print(arr26[2:])
print(arr26[:-2])
print(arr26[::2])
print(arr26[1:-1:2])
arr27 = np.arange(1, 10).reshape(3, 3)
print(arr27)
print(arr27[1, :])
print(arr27[:, 1])
print(arr27[0:2, :])
print(arr27[:, 0:2])
print(arr27[1, :])
print(arr27[1])
print(arr27[:, 1])
print(arr27[:, 1].reshape(-1, 1))
arr28 = np.arange(1, 10)
print(arr28)
cut = arr28[0:3]
print(cut)
cut[0] = 100
print(cut)
print(arr28)
arr29 = np.arange(1, 10)
print(arr29)
cut1 = arr29[0:3].copy()
print(cut1)
cut1[0] = 100
print(cut1)
print(arr29)
arr30 = np.arange(1, 10)
print(arr30)
arr30_1 = arr30
print(arr30_1)
arr30_1[0] = 100
print(arr30_1)
print(arr30)
arr31 = np.arange(1, 10)
print(arr31)
arr31_1 = arr31.copy()
print(arr31_1)
arr31_1[0] = 100
print(arr31_1)
print(arr31)
arr32 = np.arange(0, 3)
print(arr32)
arr32_1 = arr32.reshape(1, -1)
print(arr32_1)
print(arr32_1.T)
arr32_2 = np.arange(0, 3).reshape(3, 1)
print(arr32_2)
print(arr32_2.T)
arr33 = np.arange(0, 4).reshape(2, 2)
print(arr33)
print(arr33.T)
arr34 = np.arange(1, 10)
print(arr34)
arr34_flipud = np.flipud(arr34)
print(arr34_flipud)
arr35 = np.arange(1, 10).reshape(3, 3)
print(arr35)
arr35_flipud = np.flipud(arr35)
print(arr35_flipud)
arr35_fliplr = np.fliplr(arr35)
print(arr35_fliplr)
arr36 = np.arange(1, 10).reshape(3, 3)
print(arr36)
arr37 = np.arange(1, 10).reshape(3, 3).reshape(9).reshape(1, 9)
print(arr37)
arr38 = np.arange(1, 10)
arr38_2 = np.arange(11, 20)
arr38_3 = np.concatenate([arr38, arr38_2])
print(arr38_3)
arr39 = np.arange(1, 10).reshape(3, 3)
arr39_2 = np.arange(11, 20).reshape(3, 3)
arr39_3 = np.concatenate([arr39, arr39_2])
print(arr39_3)
arr40 = np.arange(1, 10).reshape(3, 3)
arr40_2 = np.arange(11, 20).reshape(3, 3)
arr40_3 = np.concatenate([arr40, arr40_2], axis=1)
print(arr40_3)
arr41 = np.arange(1, 10)
arr41_1, arr41_2, arr41_3 = np.split(arr41, [2, 8])
print(arr41_1)
print(arr41_2)
print(arr41_3)
arr42 = np.arange(1, 10).reshape(3, 3)
arr42_1, arr42_2 = np.split(arr42, [1])
print(arr42_1)
print(arr42_2)
arr42_3, arr42_4 = np.split(arr42, [1], axis=1)
print(arr42_3)
print(arr42_4)
arr43 = np.arange(1, 10).reshape(3, 3)
print(arr43 + 10)
print(arr43 - 10)
print(arr43 * 10)
print(arr43 / 10)
print(arr43 ** 2)
print(arr43 // 10)
print(arr43 % 10)
arr44 = np.arange(1, 10).reshape(3, 3)
arr44_1 = np.arange(11, 20).reshape(3, 3)
print(arr44 + arr44_1)
print(arr44 - arr44_1)
print(arr44 * arr44_1)
print(arr44 / arr44_1)
print(arr44 ** arr44_1)
arr45 = np.array([-100, 0, 100])
arr45_1 = np.random.random((10, 3))
print(arr45 * arr45_1)
arr46 = np.arange(3).reshape(3, 1)
arr46_1 = np.ones((3, 5))
print(arr46 * arr46_1)
arr47 = np.arange(3)
arr47_1 = np.arange(3).reshape(3, 1)
print(arr47 * arr47_1)
arr48 = np.arange(3)
arr48_1 = np.arange(3)
print(np.dot(arr48, arr48_1))
arr49 = np.arange(3)
arr49_1 = np.arange(1, 10).reshape(3, 3)
print(np.dot(arr49, arr49_1))
arr50 = np.arange(1, 10).reshape(3, 3)
arr50_1 = np.arange(3)
print(np.dot(arr50, arr50_1))
arr51 = np.arange(1, 10).reshape(3, 3)
arr51_1 = np.arange(11, 20).reshape(3, 3)
print(np.dot(arr51, arr51_1))
arr52 = np.array([-100, 0, 100])
arr52_abs = np.abs(arr52)
print(arr52_abs)
arr53 = np.arange(1, 10)
arr53_sin = np.sin(arr53)
arr53_cos = np.cos(arr53)
arr53_tan = np.tan(arr53)
print(arr53_sin)
print(arr53_cos)
print(arr53_tan)
arr54 = np.arange(1, 10)
arr54_e = np.exp(arr54)
arr54_2 = 2 ** arr54
arr54_10 = 10 ** arr54
print(arr54_e)
print(arr54_2)
print(arr54_10)
arr55 = np.arange(1,10)
arr55_e=np.log(arr55)
arr55_2=np.log(arr55)/np.log(2)
arr55_10=np.log(arr55)/np.log(10)
print(arr55_e)
print(arr55_2)
print(arr55_10)
arr56 = np.random.random((2,3))
print(arr56)
print("按列求最大值",np.max(arr56,axis=0))
print("按行求最大值",np.max(arr56,axis=1))
print("整体求最大值",np.max(arr56))
arr57 = np.random.random((2,3))
print(arr57)
print("按列求和",np.sum(arr57,axis=0))
print("按行求和",np.sum(arr57,axis=1))
print("整体求和",np.sum(arr57))
arr58 = np.random.random((2,3))
print(arr58)
print("按列求均值",np.mean(arr58,axis=0))
print("按行求均值",np.mean(arr58,axis=1))
print("整体求均值",np.mean(arr58))
arr59 = np.arange(1,10).reshape(3,3)
print(arr59>=4)
arr60=np.arange(1,10)
arr60_flipup=np.flipud(arr60)
print(arr60>arr60_flipup)
arr61=np.arange(1,10)
print((arr61<4)|(arr61>6))
arr62=np.random.normal(0,1,10000)
num=np.sum(np.abs(arr62)<1)
print(num)
arr62=np.arange(1,10)
arr62_flipup=np.flipud(arr62)
print(np.any(arr62==arr62_flipup))
arr63=np.random.normal(500,70,100000)
print(np.all(arr63>250))
arr64=np.arange(1,10).reshape(3,3)
print(arr64)
print(arr64>4)
print(arr64[arr64>4])
arr65_1=np.arange(1,10).reshape(3,3)
arr65_2=np.arange(11,20).reshape(3,3)
print(arr65_1>arr65_2)
print(arr65_1[arr65_1>arr65_2])
print(arr65_2[arr65_1>arr65_2])
arr66=np.random.normal(700,50,10000)
print(np.where(arr66>650))
print(np.where(arr66==np.max(arr66)))