나는 각각 1000 개의 값으로 구성된 세 개의 시계열 a, b, c를가집니다. 그것들은 행렬을 구성합니다.벡터 배열에 서로 곱하기
이제 각 배열을 가져 와서 점 적으로 다른 모든 배열에 곱하면 9 개의 새로운 벡터^a, b, ac, ba, b^2, bc를 얻고 싶습니다. , ca, cb, cc.
이 작업을 마치면이 9 개의 새로운 배열을 81 개의 새로운 배열로 결합하려고합니다.
어떻게하면됩니까? 내가 말했듯이, 나는 행렬을 만들려고했으나 그것이 원하는대로 작동하지 않습니다. A가 1000 * 1 배열을 포함하는 1 * 3 행렬로 인식되기를 바랍니다. 이제는 모든 것을 연결합니다. A는 배열을 포함하는 1 * 3 매트릭스라면 * A I가
A = [[a] [b] [c]]
A = {a b c}
A = {a; b; c}
defining a, b and c as a = {1, 2, 5, 2 , 1 ...} instead of [1, 2, 5, 2 , 1 ...]
하지만 아무도 같은 것들을 시도했습니다
모든 제품을 포함 할 것이다, 난 그냥 = 행렬 B를 만들 수 (A) 트랜스 그 (것)들은 일한다.
a, b, c, d가 목록, 열 배열, 행 배열 또는 셀로 저장되어 있는지 신경 쓰지 않고 모든 subtile 차이를 알기에 matlab에서 충분히 좋지는 않지만 속도는 중요하지 않습니다. 그리고 메모리 성능은 일종의 문제입니다.
행렬 연산자 앞에 점 '.'을 추가하여 요소 형식으로 만듭니다. 'a.^2','a. * b'. –
미안하지만 배열이 서로 곱 해져서 좋겠어. 어쩌면 내가 충분히 명확하지 않을 수도 있지만 배열을 결합하는 일종의 자동 방법을 찾고 있습니다. 실제로, 나는 세 개 이상의 신호, 아마도 수백 개를 가질 것이므로, 각 콤보에 대해 그냥 쓰는 것은 너무 지루할 것입니다. 계산을 요소별로 수행하고 싶지만 먼저 배열을 "매트릭스 방식"으로 결합하고 싶습니다. – user1661303
이상적으로는, 배열 (또는리스트 또는 벡터)이 엔트리로 있고, +와 *가 오버로드된다는 점을 제외하고는 수학적으로 행렬처럼 정확하게 동작하는 행렬을 갖고 싶습니다. 행렬 곱셈을 할 수 있다면 좋을 것입니다. 또한 A * B의 첫 번째 항목은 a11 * b12 + a12 * b21이고, 여기서 a11 등은 벡터이고 a11 * b12는 부분적으로 곱하기 – user1661303