Python equivalent for the matlab A(:,1)' and A(:)
I am converting MATLAB code to Python Numpy. I am referring this doc
http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users
Below is the two MATLAB lines,
X = A(:,1)';
R = repmat(X(:),1,6);
Where A is two dimensional matrix
This is my converted python lines
X = A[:, 1].conj().transpose()
R = np.tile(X[:], (1,6))
I have two queries,
X = A(:,1)';
- In this line, is the quotes (') refers to.conj().transpose()
- is this
X[:]
right equivalent forX(:)
or is itX.flatten(1)
?
To be more clear, actually I am trying to understand the MATLAB code,
X = A(:,1)';
- In this line, is the quotes (') refers to transpose?
X(:)
- what it means in MATLAB?
python matlab numpy
|
show 3 more comments
I am converting MATLAB code to Python Numpy. I am referring this doc
http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users
Below is the two MATLAB lines,
X = A(:,1)';
R = repmat(X(:),1,6);
Where A is two dimensional matrix
This is my converted python lines
X = A[:, 1].conj().transpose()
R = np.tile(X[:], (1,6))
I have two queries,
X = A(:,1)';
- In this line, is the quotes (') refers to.conj().transpose()
- is this
X[:]
right equivalent forX(:)
or is itX.flatten(1)
?
To be more clear, actually I am trying to understand the MATLAB code,
X = A(:,1)';
- In this line, is the quotes (') refers to transpose?
X(:)
- what it means in MATLAB?
python matlab numpy
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
1
'
is conjugate transpose in Matlab (to just transpose you use.'
).(:)
means flatten (returns a column vector). But hereX = A(:,1)
is already flattened (row vector), soX(:)
just transposes that into a column vector; it is the same asX.'
. See online example
– Luis Mendo
Nov 20 '18 at 23:00
1
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
4
A couple of important differences. MATLAB is always 2d (or higher);numpy
can reduce dimensions to 1 (or even 0d).x[:]
does nothing, except make a new view. And for a 1dndarray
transpose doesn't change anything.
– hpaulj
Nov 21 '18 at 0:52
|
show 3 more comments
I am converting MATLAB code to Python Numpy. I am referring this doc
http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users
Below is the two MATLAB lines,
X = A(:,1)';
R = repmat(X(:),1,6);
Where A is two dimensional matrix
This is my converted python lines
X = A[:, 1].conj().transpose()
R = np.tile(X[:], (1,6))
I have two queries,
X = A(:,1)';
- In this line, is the quotes (') refers to.conj().transpose()
- is this
X[:]
right equivalent forX(:)
or is itX.flatten(1)
?
To be more clear, actually I am trying to understand the MATLAB code,
X = A(:,1)';
- In this line, is the quotes (') refers to transpose?
X(:)
- what it means in MATLAB?
python matlab numpy
I am converting MATLAB code to Python Numpy. I am referring this doc
http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users
Below is the two MATLAB lines,
X = A(:,1)';
R = repmat(X(:),1,6);
Where A is two dimensional matrix
This is my converted python lines
X = A[:, 1].conj().transpose()
R = np.tile(X[:], (1,6))
I have two queries,
X = A(:,1)';
- In this line, is the quotes (') refers to.conj().transpose()
- is this
X[:]
right equivalent forX(:)
or is itX.flatten(1)
?
To be more clear, actually I am trying to understand the MATLAB code,
X = A(:,1)';
- In this line, is the quotes (') refers to transpose?
X(:)
- what it means in MATLAB?
python matlab numpy
python matlab numpy
edited Nov 20 '18 at 22:58
Navarasu
asked Nov 20 '18 at 22:49
NavarasuNavarasu
2,0101822
2,0101822
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
1
'
is conjugate transpose in Matlab (to just transpose you use.'
).(:)
means flatten (returns a column vector). But hereX = A(:,1)
is already flattened (row vector), soX(:)
just transposes that into a column vector; it is the same asX.'
. See online example
– Luis Mendo
Nov 20 '18 at 23:00
1
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
4
A couple of important differences. MATLAB is always 2d (or higher);numpy
can reduce dimensions to 1 (or even 0d).x[:]
does nothing, except make a new view. And for a 1dndarray
transpose doesn't change anything.
– hpaulj
Nov 21 '18 at 0:52
|
show 3 more comments
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
1
'
is conjugate transpose in Matlab (to just transpose you use.'
).(:)
means flatten (returns a column vector). But hereX = A(:,1)
is already flattened (row vector), soX(:)
just transposes that into a column vector; it is the same asX.'
. See online example
– Luis Mendo
Nov 20 '18 at 23:00
1
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
4
A couple of important differences. MATLAB is always 2d (or higher);numpy
can reduce dimensions to 1 (or even 0d).x[:]
does nothing, except make a new view. And for a 1dndarray
transpose doesn't change anything.
– hpaulj
Nov 21 '18 at 0:52
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
1
1
'
is conjugate transpose in Matlab (to just transpose you use .'
). (:)
means flatten (returns a column vector). But here X = A(:,1)
is already flattened (row vector), so X(:)
just transposes that into a column vector; it is the same as X.'
. See online example– Luis Mendo
Nov 20 '18 at 23:00
'
is conjugate transpose in Matlab (to just transpose you use .'
). (:)
means flatten (returns a column vector). But here X = A(:,1)
is already flattened (row vector), so X(:)
just transposes that into a column vector; it is the same as X.'
. See online example– Luis Mendo
Nov 20 '18 at 23:00
1
1
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
4
4
A couple of important differences. MATLAB is always 2d (or higher);
numpy
can reduce dimensions to 1 (or even 0d). x[:]
does nothing, except make a new view. And for a 1d ndarray
transpose doesn't change anything.– hpaulj
Nov 21 '18 at 0:52
A couple of important differences. MATLAB is always 2d (or higher);
numpy
can reduce dimensions to 1 (or even 0d). x[:]
does nothing, except make a new view. And for a 1d ndarray
transpose doesn't change anything.– hpaulj
Nov 21 '18 at 0:52
|
show 3 more comments
1 Answer
1
active
oldest
votes
Let's define an example A
:
>> A = [1 2 3; 4 5 6];
'
is conjugate transpose. To just transpose use .'
.
>> A(:,1)
ans =
1
4
>> X = A(:,1)'
X =
1 4
(:)
means reshape (flatten) into a column vector. Here X = A(:,1)'
is already flattened, namely it is a row vector, so X(:)
just transposes that into a column vector; it is the same as X.'
:
>> X(:)
ans =
1
4
>> X.'
ans =
1
4
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53402757%2fpython-equivalent-for-the-matlab-a-1-and-a%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Let's define an example A
:
>> A = [1 2 3; 4 5 6];
'
is conjugate transpose. To just transpose use .'
.
>> A(:,1)
ans =
1
4
>> X = A(:,1)'
X =
1 4
(:)
means reshape (flatten) into a column vector. Here X = A(:,1)'
is already flattened, namely it is a row vector, so X(:)
just transposes that into a column vector; it is the same as X.'
:
>> X(:)
ans =
1
4
>> X.'
ans =
1
4
add a comment |
Let's define an example A
:
>> A = [1 2 3; 4 5 6];
'
is conjugate transpose. To just transpose use .'
.
>> A(:,1)
ans =
1
4
>> X = A(:,1)'
X =
1 4
(:)
means reshape (flatten) into a column vector. Here X = A(:,1)'
is already flattened, namely it is a row vector, so X(:)
just transposes that into a column vector; it is the same as X.'
:
>> X(:)
ans =
1
4
>> X.'
ans =
1
4
add a comment |
Let's define an example A
:
>> A = [1 2 3; 4 5 6];
'
is conjugate transpose. To just transpose use .'
.
>> A(:,1)
ans =
1
4
>> X = A(:,1)'
X =
1 4
(:)
means reshape (flatten) into a column vector. Here X = A(:,1)'
is already flattened, namely it is a row vector, so X(:)
just transposes that into a column vector; it is the same as X.'
:
>> X(:)
ans =
1
4
>> X.'
ans =
1
4
Let's define an example A
:
>> A = [1 2 3; 4 5 6];
'
is conjugate transpose. To just transpose use .'
.
>> A(:,1)
ans =
1
4
>> X = A(:,1)'
X =
1 4
(:)
means reshape (flatten) into a column vector. Here X = A(:,1)'
is already flattened, namely it is a row vector, so X(:)
just transposes that into a column vector; it is the same as X.'
:
>> X(:)
ans =
1
4
>> X.'
ans =
1
4
answered Nov 20 '18 at 23:37
Luis MendoLuis Mendo
93.8k1157125
93.8k1157125
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53402757%2fpython-equivalent-for-the-matlab-a-1-and-a%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Python programmers will have an easier time answering the question if you explained what the expected output is for a sample input. They may not know matlab.
– timgeb
Nov 20 '18 at 22:51
To get the transpose, you can use np.transpose() or the .T property of a numpy array. x[:] is equal to x (no flattening going on)
– 4d11
Nov 20 '18 at 22:52
1
'
is conjugate transpose in Matlab (to just transpose you use.'
).(:)
means flatten (returns a column vector). But hereX = A(:,1)
is already flattened (row vector), soX(:)
just transposes that into a column vector; it is the same asX.'
. See online example– Luis Mendo
Nov 20 '18 at 23:00
1
@LuisMendo Thanks, It is helpful. You can move the above details from comments to answer section as it is the answer :)
– Navarasu
Nov 20 '18 at 23:19
4
A couple of important differences. MATLAB is always 2d (or higher);
numpy
can reduce dimensions to 1 (or even 0d).x[:]
does nothing, except make a new view. And for a 1dndarray
transpose doesn't change anything.– hpaulj
Nov 21 '18 at 0:52