python与matlab的函数对应_matlab和python对应函数numpy.array
numpy.matrix
Notes
ndims(a)
ndim(a) or a.ndim
get the number of dimensions of a (tensor rank)
numel(a)
size(a) or a.size
get the number of elements of an array
size(a)
shape(a) or a.shape
get the "size" of the matrix
size(a,n)
a.shape[n-1]
get the number of elements of the nth dimension of array a. (Note that MATLAB® uses 1 based indexing while Python uses 0 based indexing,
[ 1 2 3; 4 5 6 ]
array([[1.,2.,3.],
[4.,5.,6.]])
mat([[1.,2.,3.],
[4.,5.,6.]]) or
mat("1 2 3; 4 5 6")
2x3 matrix literal
[ a b; c d ]
vstack([hstack([a,b]),
hstack([c,d])])
bmat('a b; c d')
construct a matrix from blocks a,b,c, and d
a(end)
a[-1]
a[:,-1][0,0]
access last element in the 1xn matrix a
a(2,5)
access element in second row, fifth column
a(2,:)
a[1] or a[1,:]
entire second row of a
a(1:5,:)
a[0:5] or a[:5] or a[0:5,:]
the first five rows of a
linspace函数python
a(end-4:end,:)
a[-5:]
the last five rows of a
a(1:3,5:9)
a[0:3][:,4:9]
rows one to three and columns five to nine of a. This gives read-only access.
a([2,4,5],[1,3])
a[ix_([1,3,4],[0,2])]
rows 2,4 and 5 and columns 1 and 3. This allows the matrix to be modified, and doesn't require a regular slice. a(3:2:21,:)
a[ 2:21:2,:]
every other row of a, starting with the third and going to the twenty-first
a(1:2:end,:)
a[ ::2,:]
every other row of a, starting with the first
a(end:-1:1,:) or flipud(a)
a[ ::-1,:]
a with rows in reverse order
a([1:end 1],:)
a[r_[:len(a),0]]
a with copy of the first row appended to the end
a.'
transpose of a
a'
conjugate transpose of a
a * b
dot(a,b)
a * b
matrix multiply
a .* b
a * b
multiply(a,b)
element-wise multiply
a./b
a/b
element-wise divide
a.^3
a**3
power(a,3)
element-wise exponentiation
(a>0.5)
(a>0.5)
matrix whose i,jth element is (a_ij > 0.5)
find(a>0.5)
nonzero(a>0.5)
find the indices where (a > 0.5)
a(:,find(v>0.5))
a[:,nonzero(v>0.5)[0]]
a[:,nonzero(v.A>0.5)[0]]
extract the columms of a where vector v > 0.5
a(:,find(v>0.5))
a[:,v.T>0.5]
a[:,v.T>0.5)]
extract the columms of a where column vector v > 0.5 a(a<0.5)=0
a[a<0.5]=0
a with elements less than 0.5 zeroed out
mat(a.A * (a>0.5).A)
a with elements less than 0.5 zeroed out
a(:) = 3
a[:] = 3
set all values to the same scalar value
y=x
y = x.copy()
numpy assigns by reference
y=x(2,:)
y = x[1,:].copy()
numpy slices are by reference
y=x(:)
y = x.flatten(1)
turn array into vector (note that this forces a copy) 1:10
arange(1.,11.) or
r_[1.:11.] or
r_[1:10:10j]
mat(arange(1.,11.)) or
r_[1.:11.,'r']
create an increasing vector
0:9
arange(10.) or
r_[:10.] or
r_[:9:10j]
mat(arange(10.)) or
r_[:10.,'r']
create an increasing vector
[1:10]'
arange(1.,11.)[:, newaxis]
r_[1.:11.,'c']
create a column vector
mat(...)
3x4 rank-2 array full of 64-bit floating point zeros
zeros(3,4,5)
zeros((3,4,5))
mat(...)
3x4x5 rank-3 array full of 64-bit floating point zeros
ones(3,4)
ones((3,4))
mat(...)
3x4 rank-2 array full of 64-bit floating point ones
eye(3)
eye(3)
mat(...)
3x3 identity matrix
diag(a)
diag(a)
mat(...)
vector of diagonal elements of a
diag(a,0)
diag(a,0)
mat(...)
square diagonal matrix whose nonzero values are the elements of a rand(3,4)
random.rand(3,4)
mat(...)
random 3x4 matrix
linspace(1,3,4)
linspace(1,3,4)
mat(...)
4 equally spaced samples between 1 and 3, inclusive
[x,y]=meshgrid(0:8,0:5)
mgrid[0:9.,0:6.] or

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。