码迷,mamicode.com
首页 > 其他好文 > 详细

numpy array或matrix的交换两行

时间:2017-12-05 22:38:53      阅读:277      评论:0      收藏:0      [点我收藏+]

标签:imp   index   一个   mat   需要   变量   中间   python   nump   

A[j,:] = A[maxindex,:]    # 注意这样是一个很低级的错误!这样只是赋值

我们很容易想起python中的两个值交换一句搞定不用引入中间变量

a, b = b, a

但在numpy的array或matrix中,这样是错误的

需要使用选中两行来互换:

A[[i, j], :] = A[[j, i], :] # 实现了第i行与第j行的互换

 

下面看一个实例:

import numpy as np
m = np.mat([[1. ,2 ,-1],[2,1,-2],[-3,1,1]])
print("A=",A)
A[[0,2],:] = A[[2,0],:]
print("A=",A)

# -------------------------
A= [[ 1.  2. -1.]
 [ 2.  1. -2.]
 [-3.  1.  1.]]

A= [[-3.  1.  1.]
 [ 2.  1. -2.]
 [ 1.  2. -1.]]

 

numpy array或matrix的交换两行

标签:imp   index   一个   mat   需要   变量   中间   python   nump   

原文地址:http://www.cnblogs.com/cymwill/p/7989595.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!