16. numpy.reshape()使用示例

阿里云双11来了!从本博客参与阿里云,服务器最低只要86元/年!

对随机生成的两种数组randint, asfortranarray(r)分别进行测试:

import numpy as np
from numpy import random as nr
r = nr.randint(0, 10, size = (4, 3))
r1 = r.reshape((3, 4), order = 'A') # randint A与C相同 行优先 用原始数组的行排现有的行
r2 = r.reshape((3, 4), order = 'C') # 行优先
r3 = r.reshape((3, 4), order = 'F') # 列优先 用原始数组的列排现有的列
r4 = r.reshape((3, 4)) # 默认行优先
print('r : ', r)
print('r1 : ', r1)
print('r2 : ', r2)
print('r3 : ', r3)  
print('r4 : ', r4)
r = np.asfortranarray(r)
r1 = r.reshape((3, 4), order = 'A') # asfortranarray 此时A与F相同
r2 = r.reshape((3, 4), order = 'C') # 行优先
r3 = r.reshape((3, 4), order = 'F') # 列优先
r4 = r.reshape((3, 4))  # 默认行优先
print('r : ', r) # r 不变
print('r1 : ', r1)
print('r2 : ', r2)
print('r3 : ', r3)  
print('r4 : ', r4)

结果如下:


r :  [[1 2 7]
 [0 2 2]
 [3 9 8]
 [1 5 0]]
r1 :  [[1 2 7 0]
 [2 2 3 9]
 [8 1 5 0]]
r2 :  [[1 2 7 0]
 [2 2 3 9]
 [8 1 5 0]]
r3 :  [[1 1 9 2]
 [0 2 5 8]
 [3 2 7 0]]
r4 :  [[1 2 7 0]
 [2 2 3 9]
 [8 1 5 0]]
r :  [[1 2 7]
 [0 2 2]
 [3 9 8]
 [1 5 0]]
r1 :  [[1 1 9 2]
 [0 2 5 8]
 [3 2 7 0]]
r2 :  [[1 2 7 0]
 [2 2 3 9]
 [8 1 5 0]]
r3 :  [[1 1 9 2]
 [0 2 5 8]
 [3 2 7 0]]
r4 :  [[1 2 7 0]
 [2 2 3 9]
 [8 1 5 0]]
1
​

https://www.jianshu.com/p/9edae1f77865

Python量化投资网携手4326手游为资深游戏玩家推荐:《魂器学院 | 更新公告

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论