build a matrix from cell
Afficher commentaires plus anciens
Dear
I have a cell array which I need to select only first column of each cell separately and put it into a matrix. But each column has different number of row.
can somebody help me ? I think I can build a matrix of zero with the size of my cell and then I put each column separately. However, following effort does not work.
[n,m]=size(X)
A = zeros(100,n);
for i=1:n
A (:,n) = X{n}(:,1)
end
Réponses (2)
Azzi Abdelmalek
le 8 Mai 2013
X={magic(4),eye(4),rand(4)} % Example
y=cell2mat(cellfun(@(x) x(:,1),X,'un',0))
Azzi Abdelmalek
le 8 Mai 2013
Modifié(e) : Azzi Abdelmalek
le 8 Mai 2013
X={magic(5);eye(4);rand(6)}
m=numel(X);
n=max(cellfun(@(x) size(x,1),X));
out=zeros(n,m);
for k=1:m
a=X{k}(:,1);
out(1:numel(a),k)=a;
end
3 commentaires
Niki
le 8 Mai 2013
Azzi Abdelmalek
le 8 Mai 2013
What is the size of X?
Niki
le 8 Mai 2013
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!