Merging Cell Array Elements with cellstr
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
tinkyminky93
el 9 de Jun. de 2022
Respondida: Abhijit Nayak
el 9 de Jun. de 2022
Hello,
I want to merge the elements of the cell array of 100x4. After this merge, it will become 100x1. To do this process, I am using
temp = string(reshape(cell_temp, [], 4));
merged= cellstr(temp(:,1) + temp(:,2) + temp(:,3) + temp(:,4))
Are there any other methods to merge them in shorter way? Because sometimes I want to merge 15 elements but I don't want to write them explicitly. Thank you.
2 comentarios
Respuesta aceptada
Abhijit Nayak
el 9 de Jun. de 2022
I understand you want to automate merging of columns for a given matrix by using ‘cellstr’ function. The following code would work for any number of columns.
Create an array and assign it to ‘cell_temp’ variable in the code.
cell_temp = ones(100,5);
[row col]=size(cell_temp);
temp= string(reshape(cell_temp,[],col));
merged="";
for i=1:col
merged=merged + temp(:,i);
end
merged=cellstr(merged);
disp(merged)
0 comentarios
Más respuestas (1)
Simon Chan
el 9 de Jun. de 2022
Try this:
merged = cellfun(@(x) cat(2,x{:}),num2cell(cell_temp,2),'UniformOutput',false)
0 comentarios
Ver también
Categorías
Más información sobre Cell Arrays en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!