已知数组A=np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]])现在想转换成如下的形式:np.array([[4,5,2,1,3],[9,10,7,6,8],[14,15,12,11,13]])应该如何操作
3 回答
呼唤远方
TA贡献1856条经验 获得超11个赞
谢谢各位,已经找到解决方案:
import pandas as pd print np.array(pd.DataFrame(A).reindex(columns=[3,4,1,0,2]))
心有法竹
TA贡献1866条经验 获得超5个赞
我不知道np怎么解析,我就把np当做普通的列表的列表来处理,操作和你的np应该是类似的,你稍微转化下就可以。
另外,你给的例子中,所有列表的长度都是奇数个,这里我就依照照奇数来解答了,因为我不知道偶数应该怎样来操作。
看你给的例子,大致就是以中间数为中心,先顺序输出后面的部分,再逆序输出前面的部分,最后输出中间数。
最后的B就是输出
A = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]] B = [] for li in A: length = len(li) mid = length / 2 newli = [] for i in range(mid + 1, length): newli.append(li[i]) for i in range(mid): newli.append(li[mid - i - 1]) newli.append(li[length / 2]) B.append(newli) print B
- 3 回答
- 0 关注
- 1092 浏览
添加回答
举报
0/150
提交
取消
