フィルターのクリア

Row-wise concatenation of a cell array

11 ビュー (過去 30 日間)
Davis
Davis 2011 年 12 月 22 日
コメント済み: Sedo 2023 年 2 月 4 日
Apologies for what may be a banal question, but I'm having trouble with the following:
I'm writing code that involves tracking paths and filenames for 1-100 files, which I'm doing with a 2 X N (N = number of files) cell array, where the first row contains the path(s) and the second row contains the filename(s). As entries in the same column represent a single file, I need a way to concatenate every pair of entries (:,N) to assemble full paths in another cell array. Any suggestions on how best to do this (without loops, which I'm trying to avoid, unless I shouldn't be)?
Thanks!
-Davis
Thanks!

回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2011 年 12 月 22 日
try this code, I can not test it, now do not have access to MATLAB
data - your cell array (size 2xN)
out = arrayfun(@(i1)fullfile(data{:,i1}),(1:size(data,2))','un',0);
  5 件のコメント
Neon Argentus
Neon Argentus 2020 年 5 月 15 日
For a data cell containing {'File_name', 'File_extention'} which is Nx2, then you can create a single-column cell {'File_name.File_extention'} at Nx1 with
= arrayfun(@(row)[(data{row,:})],(1:size(data,1))','UniformOutput', false);
Sedo
Sedo 2023 年 2 月 4 日
Thank you this worked for me!

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

カテゴリ

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