Copying from one array to another

14 ビュー (過去 30 日間)
R J
R J 2014 年 9 月 20 日
コメント済み: Star Strider 2014 年 9 月 21 日
Hi,
I have a data.txt file that I import using txt2mat. The relevant data are in chunks of length 1250 or 1500 points, but when I try to copy them to an array I get a "Subscripted assignment dimension mismatch" error.
For example: A = [1;2;3;4;5] and B = [1;2;3;4;5;6] If I want to copy the contents of A and B to temp(1,:) and temp(2,:), respectively, I get the error. Is it possible for me to store the contents of A and B, although they are different lengths, in the same temp array?
Any help in handling this would be appreciated.. Thanks!
  2 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2014 年 9 月 20 日
You know they are different sizes, then what do you want?
John
John 2014 年 9 月 20 日
When you do an assignment like that, the rows have to be the same size. Consider using a cell. Or preallocating temp to be big enough to hold the biggest row and then storing the rows A and B after padding them with NaNs

サインインしてコメントする。

採用された回答

Star Strider
Star Strider 2014 年 9 月 20 日
As a cell array: yes. As a numeric array: no, unless you preallocate an array with a row length the size of the longest row vector.
Example:
A = [1;2;3;4;5];
B = [1;2;3;4;5;6];
% Cell Array:
tempc = {A B};
% Numeric Array
tempn = nan(max(size(A,1),size(B,1)),2); % Preallocate NaN Matrix
tempn(1:size(A,1),1) = A;
tempn(:,2) = B;
  2 件のコメント
R J
R J 2014 年 9 月 21 日
Ahh, ok I see. Thanks for clarifying this Star!
Star Strider
Star Strider 2014 年 9 月 21 日
My pleasure!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCell Arrays についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by