create a struct based on user id
3 ビュー (過去 30 日間)
古いコメントを表示
Hi! I have a set of location records called LocationRecords = [usersID, years month, day, hour, minuts, seconds, latitude, longitude, regionID], attached. I want to create a struct of data in which I can put the date associated to every user id. E.g If I have
LocationRecords=[14 2009 3 17 16 14 2 0.528229037988558 -1.70585947774536 9247;14 2009 3 17 2 33 10 0.528288412470045 -1.70598280759199 9465;14 2009 3 17 2 32 24 0.528288412470045 -1.70598280759199 9313;62 2009 3 15 19 17 34 0.528256895934005 -1.70598404814585 9223;89 2009 3 15 17 41 20 0.528261141300802 -1.70596368432656 9250]
I will obtain a struct 1x3 in which put the data associated to user with id=14, id=62 and id=89, can you help me?
2 件のコメント
採用された回答
Andrei Bobrov
2016 年 5 月 30 日
編集済み: Andrei Bobrov
2016 年 5 月 30 日
[a,~,b] = unique(LocationRecords(:,1));
x = cellfun(@(x)sprintf('id_%d',x),num2cell(a),'un',0);
y = accumarray(b,(1:numel(b))',[],@(x){LocationRecords(x,2:end)});
C = cell2struct(y,x,1);
2 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!