Pattern search and string indexing
1 次查看(过去 30 天)
显示 更早的评论
I have two cell arrays:
A = {[x(2)& x(4)& x(1)],[x(3),x(5)],[x(2),x(1)]}
B = {2465,2514,147,236,58}
where the integers in A are the indices of B items. I want to replace those indices with actual values as:
C = {[2514,236,2465],[147,58],[2514,2465]}
For loop is a bit slow. Is there an alternative?
采纳的回答
Ameer Hamza
2020-6-4
Something like this
A = {[2 4 1],[3 5],[2 1]}; % you can put indexes as numbers
B = {2465,2514,147,236,58};
A_new = cellfun(@(x) {[B{x}]}, A)
3 个评论
更多回答(1 个)
madhan ravi
2020-6-4
A = @(x){[x(2), x(4), x(1)],[x(3),x(5)],[x(2),x(1)]}
B = {2465,2514,147,236,58}
C = A(B)
2 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!