이 질문을 팔로우합니다.
- 팔로우하는 게시물 피드에서 업데이트를 확인할 수 있습니다.
- 정보 수신 기본 설정에 따라 이메일을 받을 수 있습니다.
Data extraction/split from table
조회 수: 4 (최근 30일)
이전 댓글 표시
Daher
2025년 1월 20일
Hello everyone,
Let's say I have the following table in an excel sheet I read in matlab:

I want to extract all rows with the same data,text,val to another table and sum the val, so here in this case I should have table1 with the first 3 rows with sum of the 3 val1, table2 with row4 and 5 with sum of val2+val2 and table3 with the last row.
The issue may be trivial but I can't seem to see how to do it, it has been a long time since I used matlab, I tried with find or groupcounts and other functions but it I'm stuck.
The table is generated by another function so the rows are variables depending on this input of the function
So ideally I would make a function that takes the file as input, do the split sum the values of the same group and outputs as many tables as there are groups of the same data,text,val
Any help is appreciated!
댓글 수: 2
Daher
2025년 1월 20일
Hello Stephen, thanks for your answer, appreciate it!
I didn't know about this function at all, first time I see it, I'll dive into it and see if I can use it!
채택된 답변
Star Strider
2025년 1월 20일
편집: Star Strider
2025년 1월 20일
I am not certain what reesult you want, however findgroups and accumarray (or splitapply) together are likely the direction in which you want to proceed —
T1 = readtable('art_file.xlsx', VariableNamingRule='preserve');
VN = T1.Properties.VariableNames
VN = 1x7 cell array
{'Code article'} {'Désignation'} {'Quantité'} {'Unité'} {'UN price'} {'TOT price'} {'Cust_ID'}
disp(T1)
Code article Désignation Quantité Unité UN price TOT price Cust_ID
_____________ ______________________________________________________ ________ ______ ________ _________ _______
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 10 {'UN'} 3500 35000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 8 {'UN'} 3500 28000 {'CL1'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 5 {'UN'} 4000 20000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 3 {'UN'} 4000 12000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 2 {'UN'} 3000 6000 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 1 {'UN'} 3000 3000 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 1 {'UN'} 3000 3000 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 8 {'UN'} 3500 28000 {'CL1'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 10 {'UN'} 3500 35000 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 3 {'UN'} 4000 12000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 5 {'UN'} 4000 20000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-016'} {'Tablette Dark 75% Misc 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-016'} {'Tablette Dark 75% Misc 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-016'} {'Tablette Dark 75% Misc 100g' } 2 {'UN'} 0 0 {'CL0'}
{'PF200-002'} {'Tablette Dark 90% Cranberries & Fleur de sel 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-002'} {'Tablette Dark 90% Cranberries & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-002'} {'Tablette Dark 90% Cranberries & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-002'} {'Tablette Dark 90% Cranberries & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-003'} {'Tablette Dark 90% Amandes & Raisins 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-004'} {'Tablette Dark 90% Figues & Pistaches 100g' } 2 {'UN'} 4500 9000 {'CL0'}
{'PF200-005'} {'Tablette Dark 90% Eclats de café 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-005'} {'Tablette Dark 90% Eclats de café 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-005'} {'Tablette Dark 90% Eclats de café 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-006'} {'Tablette Dark 90% Eclats de cacao 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-006'} {'Tablette Dark 90% Eclats de cacao 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-006'} {'Tablette Dark 90% Eclats de cacao 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-007'} {'Tablette Dark 90% Fleur de sel 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF200-007'} {'Tablette Dark 90% Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-007'} {'Tablette Dark 90% Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF200-008'} {'Tablette Dark 90% Amandes & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-008'} {'Tablette Dark 90% Amandes & Fleur de sel 100g' } 3 {'UN'} 4000 12000 {'CL0'}
{'PF200-008'} {'Tablette Dark 90% Amandes & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-008'} {'Tablette Dark 90% Amandes & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-009'} {'Tablette Dark 90% Noisettes & Cranberries 100g' } 2 {'UN'} 4500 9000 {'CL0'}
{'PF200-009'} {'Tablette Dark 90% Noisettes & Cranberries 100g' } 3 {'UN'} 4500 13500 {'CL0'}
{'PF200-009'} {'Tablette Dark 90% Noisettes & Cranberries 100g' } 2 {'UN'} 4500 9000 {'CL0'}
{'PF200-009'} {'Tablette Dark 90% Noisettes & Cranberries 100g' } 1 {'UN'} 4500 4500 {'CL0'}
{'PF200-010'} {'Tablette Dark 90% Misc 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF200-010'} {'Tablette Dark 90% Misc 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF200-011'} {'Tablette Dark 90% Noisettes torréfiées 100g' } 2 {'UN'} 4500 9000 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 0 0 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-002'} {'Tablette Milk 50% Amandes & Fleur de sel 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF300-005'} {'Tablette Milk 50% Eclats de café 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF300-005'} {'Tablette Milk 50% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-005'} {'Tablette Milk 50% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-005'} {'Tablette Milk 50% Eclats de café 100g' } 8 {'UN'} 3500 28000 {'CL1'}
{'PF300-005'} {'Tablette Milk 50% Eclats de café 90g' } 1 {'UN'} 3000 3000 {'CL0'}
{'PF300-006'} {'Tablette Milk 50% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-006'} {'Tablette Milk 50% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-006'} {'Tablette Milk 50% Eclats de cacao 100g' } 5 {'UN'} 3000 15000 {'CL1'}
{'PF300-006'} {'Tablette Milk 50% Eclats de cacao 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF300-007'} {'Tablette Milk 50% Cacahuètes torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-008'} {'Tablette Milk 50% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-008'} {'Tablette Milk 50% Cajou torréfiées 100g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF300-008'} {'Tablette Milk 50% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-008'} {'Tablette Milk 50% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-008'} {'Tablette Milk 50% Cajou torréfiées 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 8 {'UN'} 4000 32000 {'CL1'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF300-010'} {'Tablette Milk 50% Noisettes torréfiées 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF300-011'} {'Tablette Milk 50% Misc 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF300-011'} {'Tablette Milk 50% Misc 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-002'} {'Tablette Blond 35% Eclats de café 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-002'} {'Tablette Blond 35% Eclats de café 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-002'} {'Tablette Blond 35% Eclats de café 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-003'} {'Tablette Blond 35% Eclats de cacao 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF400-006'} {'Tablette Blond 35% Cacahuètes torréfiées 90g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF400-007'} {'Tablette Blond 35% Cajou torréfiées 90g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF110-002'} {'Tablette Dark 100% Cranberries & Fleur de sel 100g'} 2 {'UN'} 4000 8000 {'CL0'}
{'PF110-005'} {'Tablette Dark 100% Eclats de café 90g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF110-007'} {'Tablette Dark 100% Fleur de sel 90g' } 2 {'UN'} 3500 7000 {'CL0'}
{'PF110-008'} {'Tablette Dark 100% Amandes & Fleur de sel 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF110-009'} {'Tablette Dark 100% Noisettes & Cranberries 100g' } 1 {'UN'} 4500 4500 {'CL0'}
{'PF110-011'} {'Tablette Dark 100% Misc 100g' } 2 {'UN'} 4000 8000 {'CL0'}
% V1 = T1{:,1}
% V2 = T1{:,2}
[G,ID1,ID2] = findgroups(T1{:,1},T1{:,2})
G = 262×1
1
1
1
1
1
1
1
1
1
1
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
ID1 = 40x1 cell array
{'PF100-002'}
{'PF100-003'}
{'PF100-004'}
{'PF100-005'}
{'PF100-006'}
{'PF100-009'}
{'PF100-010'}
{'PF100-011'}
{'PF100-013'}
{'PF100-014'}
{'PF100-015'}
{'PF100-016'}
{'PF110-002'}
{'PF110-005'}
{'PF110-007'}
{'PF110-008'}
{'PF110-009'}
{'PF110-011'}
{'PF200-002'}
{'PF200-003'}
{'PF200-004'}
{'PF200-005'}
{'PF200-006'}
{'PF200-007'}
{'PF200-008'}
{'PF200-009'}
{'PF200-010'}
{'PF200-011'}
{'PF300-002'}
{'PF300-005'}
ID2 = 40x1 cell array
{'Tablette Dark 75% Cranberries & Fleur de sel 100g' }
{'Tablette Dark 75% Amandes & Raisins 100g' }
{'Tablette Dark 75% Figues & Pistaches 100g' }
{'Tablette Dark 75% Eclats de café 100g' }
{'Tablette Dark 75% Eclats de cacao 100g' }
{'Tablette Dark 75% Fleur de sel 100g' }
{'Tablette Dark 75% Cacahuètes torréfiées 100g' }
{'Tablette Dark 75% Cajou torréfiées 100g' }
{'Tablette Dark 75% Amandes & Fleur de sel 100g' }
{'Tablette Dark 75% Noisettes torréfiées 100g' }
{'Tablette Dark 75% Noisettes & Cranberries 100g' }
{'Tablette Dark 75% Misc 100g' }
{'Tablette Dark 100% Cranberries & Fleur de sel 100g'}
{'Tablette Dark 100% Eclats de café 90g' }
{'Tablette Dark 100% Fleur de sel 90g' }
{'Tablette Dark 100% Amandes & Fleur de sel 100g' }
{'Tablette Dark 100% Noisettes & Cranberries 100g' }
{'Tablette Dark 100% Misc 100g' }
{'Tablette Dark 90% Cranberries & Fleur de sel 100g' }
{'Tablette Dark 90% Amandes & Raisins 100g' }
{'Tablette Dark 90% Figues & Pistaches 100g' }
{'Tablette Dark 90% Eclats de café 100g' }
{'Tablette Dark 90% Eclats de cacao 100g' }
{'Tablette Dark 90% Fleur de sel 100g' }
{'Tablette Dark 90% Amandes & Fleur de sel 100g' }
{'Tablette Dark 90% Noisettes & Cranberries 100g' }
{'Tablette Dark 90% Misc 100g' }
{'Tablette Dark 90% Noisettes torréfiées 100g' }
{'Tablette Milk 50% Amandes & Fleur de sel 100g' }
{'Tablette Milk 50% Eclats de café 100g' }
OutTables1 = accumarray(G, (1:numel(G)).', [], @(x){T1(x,:)})
OutTables1 = 40x1 cell array
{29x7 table}
{ 9x7 table}
{21x7 table}
{19x7 table}
{ 9x7 table}
{ 6x7 table}
{ 6x7 table}
{19x7 table}
{23x7 table}
{11x7 table}
{16x7 table}
{ 3x7 table}
{ 1x7 table}
{ 1x7 table}
{ 1x7 table}
{ 1x7 table}
disp(OutTables1{1})
Code article Désignation Quantité Unité UN price TOT price Cust_ID
_____________ _____________________________________________________ ________ ______ ________ _________ _______
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 10 {'UN'} 3500 35000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 8 {'UN'} 3500 28000 {'CL1'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
disp(OutTables1{2})
Code article Désignation Quantité Unité UN price TOT price Cust_ID
_____________ ____________________________________________ ________ ______ ________ _________ _______
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 1 {'UN'} 3500 3500 {'CL0'}
disp(OutTables1{end})
Code article Désignation Quantité Unité UN price TOT price Cust_ID
_____________ ___________________________________________ ________ ______ ________ _________ _______
{'PF400-007'} {'Tablette Blond 35% Cajou torréfiées 90g'} 1 {'UN'} 3500 3500 {'CL0'}
EDIT — (20 Jan 2025 at 18:32)
Added summary tables —
format longG
for k = 1:numel(OutTables1)
OutTables2{k,:} = table(OutTables1{k}{1,1}, OutTables1{k}{1,2}, sum(OutTables1{k}{:,3}), sum(OutTables1{k}{:,6}), VariableNames={VN{1}, VN{2}, VN{3}, VN{6}});
end
OutTables2{1}
ans = 1x4 table
Code article Désignation Quantité TOT price
_____________ _____________________________________________________ ________ _________
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 98 343000
OutTables2{2}
ans = 1x4 table
Code article Désignation Quantité TOT price
_____________ ____________________________________________ ________ _________
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g'} 13 45500
OutTables2{end}
ans = 1x4 table
Code article Désignation Quantité TOT price
_____________ ___________________________________________ ________ _________
{'PF400-007'} {'Tablette Blond 35% Cajou torréfiées 90g'} 1 3500
.
추가 답변 (2개)
Paul
2025년 1월 20일
편집: Paul
2025년 1월 20일
Hi Daher,
T = readtable('art_file.xlsx')
Warning: Column headers from the file were modified to make them valid MATLAB identifiers before creating variable names for the table. The original column headers are saved in the VariableDescriptions property.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
T = 262x7 table
CodeArticle D_signation Quantit_ Unit_ UNPrice TOTPrice Cust_ID
_____________ _____________________________________________________ ________ ______ _______ ________ _______
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 10 {'UN'} 3500 35000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
[G,TID] = findgroups(T)
G = 262×1
5
7
1
4
5
1
1
5
2
4
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
TID = 95x7 table
CodeArticle D_signation Quantit_ Unit_ UNPrice TOTPrice Cust_ID
_____________ _____________________________________________________ ________ ______ _______ ________ _______
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 2 {'UN'} 3500 7000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 4 {'UN'} 3500 14000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 6 {'UN'} 3500 21000 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 8 {'UN'} 3500 28000 {'CL1'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 10 {'UN'} 3500 35000 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 3 {'UN'} 3500 10500 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 1 {'UN'} 4000 4000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 2 {'UN'} 4000 8000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 3 {'UN'} 4000 12000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 4 {'UN'} 4000 16000 {'CL0'}
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 5 {'UN'} 4000 20000 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 2 {'UN'} 3500 7000 {'CL0'}
G is the mapping of each row of T to a unique row and TID shows what those unique rows are.
Then, for example, we can extract all of the rows in Group 1, of which there are apparently 12. All of the rows of T1 match the first row of TID. If you want, you can loop over 1:95 and extract each group to its own table, though I'm not sure of the utility of that because the rows will be the same in each one of those 95 tables.
T1 = T(G==1,:)
T1 = 12x7 table
CodeArticle D_signation Quantit_ Unit_ UNPrice TOTPrice Cust_ID
_____________ _____________________________________________________ ________ ______ _______ ________ _______
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} 1 {'UN'} 3500 3500 {'CL0'}
댓글 수: 8
Daher
2025년 1월 20일
Hello Paul, thanks for your answer!
the final goal is to group all the individual items and sum the quantities and then the total price, so here we have managed to group them but by doing so we lost some quantites in the process,
So ideally, the first row should be (done by hand):
Code Designation Qty TOT price
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} {98} {343000}
That's why idk if the findgroups function is suitable for this specific task :s
Paul
2025년 1월 20일
편집: Paul
2025년 1월 20일
To clarify ...
We have a table with 262 rows. We want to group the table by the unique combinations of only Code and Designation. Then for each group we want to find the the sum of Quantity and TOTPrice for all of the rows in that group?
If so, then
T = readtable('art_file.xlsx');
Warning: Column headers from the file were modified to make them valid MATLAB identifiers before creating variable names for the table. The original column headers are saved in the VariableDescriptions property.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
Tsum = groupsummary(T,1:2,"sum",{'Quantit_','TOTPrice'})
Tsum = 40x5 table
CodeArticle D_signation GroupCount sum_Quantit_ sum_TOTPrice
_____________ ______________________________________________________ __________ ____________ ____________
{'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g' } 29 98 3.43e+05
{'PF100-003'} {'Tablette Dark 75% Amandes & Raisins 100g' } 9 13 45500
{'PF100-004'} {'Tablette Dark 75% Figues & Pistaches 100g' } 21 40 1.6e+05
{'PF100-005'} {'Tablette Dark 75% Eclats de café 100g' } 19 25 87500
{'PF100-006'} {'Tablette Dark 75% Eclats de cacao 100g' } 9 12 42000
{'PF100-009'} {'Tablette Dark 75% Fleur de sel 100g' } 6 9 29500
{'PF100-010'} {'Tablette Dark 75% Cacahuètes torréfiées 100g' } 6 10 35000
{'PF100-011'} {'Tablette Dark 75% Cajou torréfiées 100g' } 19 38 1.33e+05
{'PF100-013'} {'Tablette Dark 75% Amandes & Fleur de sel 100g' } 23 46 1.61e+05
{'PF100-014'} {'Tablette Dark 75% Noisettes torréfiées 100g' } 11 22 88000
{'PF100-015'} {'Tablette Dark 75% Noisettes & Cranberries 100g' } 16 28 1.12e+05
{'PF100-016'} {'Tablette Dark 75% Misc 100g' } 3 6 14000
{'PF110-002'} {'Tablette Dark 100% Cranberries & Fleur de sel 100g'} 1 2 8000
{'PF110-005'} {'Tablette Dark 100% Eclats de café 90g' } 1 2 8000
{'PF110-007'} {'Tablette Dark 100% Fleur de sel 90g' } 1 2 7000
{'PF110-008'} {'Tablette Dark 100% Amandes & Fleur de sel 100g' } 1 2 8000
Daher
2025년 1월 20일
Yes Paul that's right so for the previous example we find the combination {'PF100-002'} {'Tablette Dark 75% Cranberries & Fleur de sel 100g'} and then sum all the associated quantities; which will give 98 and we sum also the tot price equal to 343000.
Next group will be
PF100-003 Tablette Dark 75% Amandes & Raisins 100g with qty = 13 and tot price 45500
and so on ..
Daher
2025년 1월 20일
is it an embedded matlab function ? I don't find it in my version of matlab (2020a). Or are you refering to something else ?
@Star Strider indeed sums up the tables in this loop he added. Maybe you were refering to this in a simpler way?
for k = 1:numel(OutTables1)
OutTables2{k,:} = table(OutTables1{k}{1,1}, OutTables1{k}{1,2}, sum(OutTables1{k}{:,3}), sum(OutTables1{k}{:,6}), VariableNames={VN{1}, VN{2}, VN{3}, VN{6}});
end
Paul
2025년 1월 20일
As shown in this comment Tsum was the output from groupsummary that gives exactly the desired output, at least as I understand it.
Daher
2025년 1월 21일
Oh my bad Paul I did'nt see the rest of your comment below with Tsum that's why I was confused ^^" Thank you also that works great! Really appreciate it :)
Sulaymon Eshkabilov
2025년 1월 20일
You can try this approach for your exercise - see example:

% Specify the Data File Name to Be Read/Imported
filename = 'DATA_Exp_Imp.xlsx';
OPTIONS = detectImportOptions(filename);
OPTIONS.VariableNamingRule = 'preserve'; % Preserve original variable names
% Read the Table Data
T_DATA = readtable(filename, OPTIONS);
% Display the Imported Data Table
disp(T_DATA);
Data Text Values
_________ _________ ________
{'Data1'} {'Text1'} {'val1'}
{'Data1'} {'Text1'} {'val1'}
{'Data1'} {'Text1'} {'val1'}
{'Data2'} {'Text2'} {'val2'}
{'Data2'} {'Text2'} {'val2'}
{'Data3'} {'Text3'} {'val3'}
{'Data3'} {'Text3'} {'val3'}
{'Data3'} {'Text3'} {'val3'}
%% Export/Write to External Files
writetable(T_DATA(1:3,:), 'DATA_Exp1.txt', 'Delimiter', '\t', 'WriteRowNames',true)
writetable(T_DATA(4:5,:), 'DATA_Exp2.txt','Delimiter', '\t', 'WriteRowNames',true)
writetable(T_DATA(6:8,:), 'DATA_Exp3.txt', 'Delimiter', '\t', 'WriteRowNames',true)
type 'DATA_Exp1.txt'
Data Text Values
Data1 Text1 val1
Data1 Text1 val1
Data1 Text1 val1
type 'DATA_Exp2.txt'
Data Text Values
Data2 Text2 val2
Data2 Text2 val2
type 'DATA_Exp3.txt'
Data Text Values
Data3 Text3 val3
Data3 Text3 val3
Data3 Text3 val3
댓글 수: 1
Daher
2025년 1월 20일
Hello Sulaymon, thank you for your answer!
sorry I didn't mentioned but the table is dynamic, it's generated by a function and the rows are variables they are not the same every time, that's why is quite tricky :s So I need to create a function which can automate the split. Attached is an example for the table generated
참고 항목
카테고리
Help Center 및 File Exchange에서 Tables에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!오류 발생
페이지가 변경되었기 때문에 동작을 완료할 수 없습니다. 업데이트된 상태를 보려면 페이지를 다시 불러오십시오.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom(English)
아시아 태평양
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)