How to access an individual column from data
159 次查看(过去 30 天)
显示 更早的评论
Hi guys, this might be a simple question but i don't really know how to do it.
I have 10x8 matrix, and want to specify every column besides the first one as: x1,x2,x3,x4,x5,x6,x7. Like, x1 = [...], x2 =[...] etc. Until now i've done it manually by copy-paste the values, but i'm sure there is a much easier way.
Thanks, B!
2 个评论
Stephen23
2017-11-28
"...i'm sure there is a much easier way."
Yes, there is: use indexing. Indexing is simple, neat, and very efficient. Do NOT magically create or access variable names in a loop:
回答(2 个)
KSSV
2017-11-28
It is not required to name each column by x1, x2....x10.....it is waste of time and not all necessary. Already you have all the data in a matrix form..this is sufficient.
A = rand(10,8) ; % matrix
A(:,1) % gives first column
A(:,7) % gives seventh column
A(:,end) % gives last column ie eight
5 个评论
Stephen23
2017-11-28
编辑:Stephen23
2017-11-28
If mat is your matrix, then something like this:
mat = [...];
out = [...];
for k = 1:size(M,2)
vec = mat(:,k);
... do whatever with vec
out(k) = ... save the output
end
You will need to figure out the require size of the output matrix.
Note that basic MATLAB concepts, such as how to write loops and access data using indexing, are introduced in the introductory tutorials. These tutorials are highly recommended for all beginners:
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!