gpt4 book ai didi

Matlab A( :, 1)' 和 A(:) 的 Python 等效项

转载 作者:行者123 更新时间:2023-11-30 22:04:10 26 4
gpt4 key购买 nike

我正在将 MATLAB 代码转换为 Python Numpy。我指的是这个文档 http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users

下面是两行 MATLAB 代码,

X = A(:,1)'; 
R = repmat(X(:),1,6);

其中A是二维矩阵

这是我转换后的 python 行

X = A[:, 1].conj().transpose()
R = np.tile(X[:], (1,6))

我有两个疑问,

  1. X = A(:,1)'; - 在这一行中,引号 (') 是否引用 .conj().transpose()<
  2. 这个 X[:]X(:) 的等价物还是 X.flatten(1)

更清楚地说,实际上我正在尝试理解 MATLAB 代码,

  1. X = A(:,1)'; - 在这一行中,引号 (') 是否表示转置?
  2. X(:) - 它在 MATLAB 中意味着什么?

最佳答案

让我们定义一个示例A:

>> A = [1 2 3; 4 5 6];

'conjugate transpose 。至transpose使用.'.

>> A(:,1)
ans =
1
4

>> X = A(:,1)'
X =
1 4

(:) 表示 reshape (flatten) into a column vector 。这里的 X = A(:,1)' 已经被展平了,即它是一个 row 向量,所以 X(:) 只是转置它转化为列向量;它与X.'相同:

>> X(:)
ans =
1
4

>> X.'
ans =
1
4

关于Matlab A( :, 1)' 和 A(:) 的 Python 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53402757/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com