import numpy as np
# 1.查看Numpy的版本号:
print(np.__version__) '1.19.5'
print(np.show_config())
# 2.如何创建一个所有值都是False的布尔类型的数组:
ar = np.full((2, 2), False)
arry = np.zeros((2,2),dtype=bool)
print(ar,arry)
'''
[[False False]
[False False]]
'''
# 3.将一个有10个数的一维数组的形状进行转换:
np.random.seed(1)
arr = np.random.randint(0,20,size=(1,10))
arr1 = arr.reshape(2,5)
print(arr1)
'''
[[ 5 11 12 8 9]
[11 5 15 0 16]]
'''
# 4.将数组中所有偶数都替换成0(改变原来数组和不改变原来数组两种方式实现):
np.random.seed(1)
arr2 = np.random.randint(0,20,size=(4,5))
arr2[arr2%2==0] = 0 # 改变数组
arr22=np.where(arr2%2==0,0,arr2) # 不改变数组
print(arr2)
print(arr22)
'''
[[ 5 11 0 0 9]
[11 5 15 0 0]
[ 1 0 7 13 0]
[ 0 5 0 11 0]]
'''
# 5.创建一个一维且有10个数的数组,元素是从0-1之间,但是不包含0和1:
arr3 = np.random.uniform(0,1,size=(1,10))
print(arr3)
'[[0.22957721 0.53441391 0.91396202 0.45720481 0.43069857 0.93912779
0.77838924 0.71597052 0.8027575 0.09280081]]'
# 6.求以下数组大于等于5并且小于等于10的数组:
arr4 = np.array([[ 8,15,13,8,11],
[18,11,8,7,2],
[17,11,15,5,7],
[ 3,6,4,10,11]])
arr5 = arr4[(arr4>=5)&(arr4<=10)]
print(arr5)
'[ 8 8 8 7 5 7 6 10]'
# 7.将一个二维数组的行和列分别进行逆向:
np.random.seed(1)
arr6 = np.random.randint(0,20,size=(4,5))
arr7 = arr6[::-1] #行逆向
arr8 = arr6[:,::-1] #列逆向
print(arr7)
print(arr8)
'''
行逆向
[[18 5 18 11 10]
[ 1 12 7 13 6]
[11 5 15 0 16]
[ 5 11 12 8 9]]
列逆向
[[ 9 8 12 11 5]
[16 0 15 5 11]
[ 6 13 7 12 1]
[10 11 18 5 18]]
'''
# 8.如何找到数组中每行的最大值:
np.random.seed(1)
arr9 = np.random.randint(0,20,size=(4,5))
arr9_max = np.max(arr9,axis=1)
print(arr9_max)
'[12 16 13 18]'
# 9.如何按照行求最小值与最大值相除的结果:
np.random.seed(9)
arr10 = np.random.randint(0,20,size=(4,5))
arr11 = np.divide(np.min(arr10,axis=1),np.max(arr10,axis=1))
print(arr11)
'[0. 0.55555556 0.05263158 0.35294118]'
# 10.判断两个数组是否完全相等:
np.random.seed(3)
arr12 = np.random.randint(0,20,size=(4,5))
np.random.seed(4)
arr13 = np.random.randint(0,20,size=(4,5))
arr14 = arr12.copy()
print('我是arr12和arr13比较是否完全相同:%s'%np.all(arr12==arr13))
print('我是arr12和arr14比较是否完全相同:%s'%np.all(arr12==arr14))
'''
我是arr12和arr13比较是否完全相同:False
我是arr12和arr14比较是否完全相同:True
'''
# 11.设置一个数组不能修改值:
np.random.seed(3)
arr15 = np.random.randint(0,20,size=(4,5))
arr15.setflags(write=0)
try:
arr15[0,1] =100
except ValueError:
print('ValueError: assignment destination is read-only')
else:
print(arr15)
'ValueError: assignment destination is read-only'
# 12.找到数组中离某个元素的最近的值:
arr16 = np.array([[ 8,15,13,8,11],
[18,11,8,7,2],
[17,11,15,5,7],
[ 3,6,4,10,11]])
【腾讯文档】逻辑教育-数据分析课程-作业考勤表(Mark老师) 第二次作业https://docs.qq.com/sheet/DQWh5c3R0a252S2NO