フィルターのクリア

How do i count unique elements in two table columns?

5 ビュー (過去 30 日間)
ahmed obaid
ahmed obaid 2017 年 6 月 9 日
コメント済み: ahmed obaid 2017 年 6 月 9 日
Dear all;
for the following table:which include student name, class and school name ..
std_name class School
A1 1 Art
A2 1 Art
A3 1 Muc
A4 2 muc
A5 3 Art
A6 2 fun
A7 3 fun
A8 4 Muc
...
i need to count : - how many student in every class, then write new table includes the following result as example: class number and how many student in every class, then names of schools... as shown below:
class No. of std School
1 50 Art, Muc
2 30 muc, fun
3 10 Art, fun
4 100 muc
etc..
-

採用された回答

Guillaume
Guillaume 2017 年 6 月 9 日
編集済み: Guillaume 2017 年 6 月 9 日
Simpler, using rowfun which did exist in R2015a:
out = rowfun(@(school) {strjoin(unique(school), ', ')}, A, ...
'GroupingVariables', 'class', 'InputVariables', 'School')
  1 件のコメント
ahmed obaid
ahmed obaid 2017 年 6 月 9 日
thanks a lot for all experiences ...

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

その他の回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2017 年 6 月 9 日
編集済み: Andrei Bobrov 2017 年 6 月 9 日
A = readtable('A.csv');
A.Properties.VariableNames = {'std_name','class','School'};
[g,ii] = findgroups(A.class);
out = table(ii,accumarray(g,1),splitapply(@(x){strjoin(unique(x),',')},A.School,g),...
'var',{'class','No_of_std','School' });
  5 件のコメント
Guillaume
Guillaume 2017 年 6 月 9 日
編集済み: Guillaume 2017 年 6 月 9 日
You download R2015b like you download any other releases, directly from the mathworks site:
But if you're going to upgrade, you'd be better off moving to the latest version: 2017a
ahmed obaid
ahmed obaid 2017 年 6 月 9 日
Perhaps ... modified code to earlier version.. upgrades is not available currently.. thanks

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

カテゴリ

Help Center および File ExchangeMATLAB Report Generator についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by