Accumulating values for different people
7 views (last 30 days)
Show older comments
Hello,
This is part of a larger project. Finished all that, just need to extract one bit of data which I have trouble doing. I have no start yet as I'm a MATLAB rookie and don't know which command to use for this.
I have a list of 6 people, and they all paid multiple payments, and I'd like to find out how much every person has paid. The data file I have been given looks like the following:
Amount Name
$12,00 Josh
$27,00 Sophie
$18,00 Jeff
$169,00 Josh
And so on for a total of 100 rows. How can I create a table from this that indicates for all 6 people how much they have paid?
Thanks for the help and kind regards,
Matthijs
Answers (1)
Askic V
on 20 Nov 2022
Edited: Askic V
on 20 Nov 2022
Let's say you have an input data file named 'inputData.txt' with the following structure:
$12,00 Josh
$27,00 Sophie
$18,00 Jeff
$169,00 Josh
Now you need to read this file, preprocess the data and use the function that Walter suggested.
This is how I would do it:
filename = 'inputData.txt'; % define filename
opts = detectImportOptions(filename,'ReadVariableNames',...
false, 'decimal',','); % define read options
T = readtable(filename,opts); % read data into table
T.Var1 = replace(T.Var1, ',', '.');% replace decimal comma with point
T.Var1 = str2double(replace(T.Var1, '$', ''));% get rid of leading $
GC = groupsummary(T, 'Var2','sum') % use groupsummary function
0 Comments
See Also
Categories
Find more on LaTeX 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!