为了账号安全,请及时绑定邮箱和手机立即绑定

python的numpy数组重排

python的numpy数组重排

犯罪嫌疑人X 2018-07-16 07:24:17
已知数组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]))


查看完整回答
反对 回复 2018-07-17
?
心有法竹

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


查看完整回答
反对 回复 2018-07-17
  • 3 回答
  • 0 关注
  • 1092 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号