how can i make a parent - children hierarchy
40 views (last 30 days)
Show older comments
Hello
i have two column one is number of hiarachy the second is the name of that hiarachy like this :
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1746331/image.png)
can you help make a code that will generate what is manually wrote in the third column , note that the file is large and contain long WBS path like this (2.2.3.5.4.5.7)
Regards
3 Comments
Answers (1)
Voss
on 4 Aug 2024 at 21:33
Edited: Voss
on 4 Aug 2024 at 21:34
Here's some logic that should do it. Adjust as necessary for your actual file.
% an example table that might be similar to what you get when you
% readtable() your file:
WBS_Path = {'2';'2.1';'2.1.1'};
WBS_Name = {'SCOPE OF WORK';'KEY MILESTONES';'CONTRACTUAL MILESTONES'};
T = table(WBS_Path,WBS_Name)
% construct the third column from the first two:
N = cellfun(@(p)nnz(p=='.')+1,T.WBS_Path);
C = arrayfun(@(n)repmat({''},1,n),N,'UniformOutput',false);
for ii = 1:size(T,1)
idx = find(startsWith(T.WBS_Path,T.WBS_Path{ii}));
for jj = 1:numel(idx)
C{idx(jj)}(N(ii)) = T.WBS_Name(ii);
end
end
T.WBS_Full_Path_Name = cellfun(@(c)strjoin(c,' > '),C,'UniformOutput',false)
0 Comments
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!