#花式索引,将数据赋值到新数组中。
'''arr=np.empty((8,4))
print(arr)
for i in range(8):
arr[i]=i
print(arr)
brr=arr[[4,0,3,5]]
brr1=arr[[-5,-6,-7]]
#print(brr)'''
#4,0,3,5就是每行开头的数字
'''结果:
[[4. 4. 4. 4.]
[0. 0. 0. 0.]
[3. 3. 3. 3.]
[5. 5. 5. 5.]]
'''
#print(brr1)#从末尾行方向索引
'''结果
[[3. 3. 3. 3.]
[2. 2. 2. 2.]
[1. 1. 1. 1.]]
'''
'''crr=np.array([[-1.24734546, -0.4148296, -1.80000535, -2.5189253 ],
[ 0.5630976, -0.58740314, 0.31742987 , 0.04278619],
[ 1.13932646 ,-0.52458922 , 0.71888754, -0.48672394],
[ 0.46501 , -0.27293732 ,0.26287021 ,-1.39207027],
[ 1.14054827, 1.46194662 ,-1.76638175 ,1.31461211],
[-1.80507049, 1.75645465 ,-0.27707486, -0.93877164],
[ 1.48919028, -1.15454357, 1.00450808, 1.3627017 ]])
drr=crr[[-1.24734546,0.5630976,1.13932646,0.46501]]
print(crr)'''#数字不一样的索引不了
#arr=np.arange(32).reshape((8,4))
#print(arr)
#print(arr[[1,5,7,2],[0,3,1,2]])#这样选出的元素是(1,0)、(5,3)、(7,1)、(2,2)
#print(arr[[1,5,7,2]][:,[0,3,1,2]])#
#选取的是1572行,0,3,1,2列
'''arr=np.arange(15).reshape((3,5))
print(arr)
print(arr.T)#转置
arr=np.random.randn(6,3)
print(arr)
print(np.dot(arr.T,arr))#内积运算'''
#高维数组,transpose需要得到一个又轴编号组成的元组才能对这些轴进行转置
#arr=np.arange(16).reshape((2,2,4))
#print(arr)
'''[[[ 0 1 2 3]
[ 4 5 6 7]]
[[ 8 9 10 11]
[12 13 14 15]]]'''
#print(arr.transpose((1,0,2)))#z轴与x轴对换
'''[[[ 0 1 2 3]
[ 8 9 10 11]]
[[ 4 5 6 7]
[12 13 14 15]]]'''
#print(arr.transpose((0,1,2)))#z轴与y轴对换
'''[[[ 0 1 2 3]
[ 4 5 6 7]]
[[ 8 9 10 11]
[12 13 14 15]]]'''
#print(arr.transpose((0,2,1)))#z轴与y轴对换
'''[[[ 0 4]
[ 1 5]
[ 2 6]
[ 3 7]]
[[ 8 12]
[ 9 13]
[10 14]
[11 15]]]'''
#print(arr.swapaxes(1,2))#z轴与y轴对换
'''[[[ 0 4]
[ 1 5]
[ 2 6]
[ 3 7]]
[[ 8 12]
[ 9 13]
[10 14]
[11 15]]]'''
#快速的元素级数组函数
'''
arr=np.arange(10)
print(arr)
print('sqrt is',np.sqrt(arr))
print('exp is ',np.exp(arr))
x=randn(9)
y=randn(9)
print(np.maximum(x,y))#元素级最大值
'''
arr=randn(7)*5
print(arr)
'''结果
[ 6.41166867 0.9811915 -7.67837943 7.29988506 4.37190416 -3.2241011
1.41395403]'''
print(np.modf(arr))#将浮点数的小数和整数部分分开。
'''结果
(array([ 0.41166867, 0.9811915 , -0.67837943, 0.29988506, 0.37190416,
-0.2241011 , 0.41395403]),
array([ 6., 0., -7., 7., 4., -3., 1.]))'''