MATLAB Answers

Creating new dataset corresponding to certain name within a variable column

Asked by Clara Woodie

Clara Woodie (view profile)

on 22 Mar 2019
Latest activity Commented on by Clara Woodie

Clara Woodie (view profile)

on 22 Mar 2019
I have a dataset with four columns: day, bottle, species finalC. Attached is a screenshot for reference. In the bottle column, there are many types of bottle names I reference. I wish to create a new dataset corresponding only to a specific name of bottle, for example "C-a"
Desired outcome looks as follows:
day bottle species finalC
1 'C-a' 'Colp' 1077.58620700000
2 'C-a' 'Colp' 86525.1499800000
2 'C-a' 'Colp' 208333.333300000

0 Comments

Sign in to comment.

1 Answer

the cyclist (view profile)

Answer by the cyclist

the cyclist (view profile)

on 22 Mar 2019

Here is one possible way. (It assumes your table's variable name is tbl.)
outcome = tbl(ismember(tbl.bottle,'C-a'),:);

Clara Woodie

Clara Woodie (view profile)

on 22 Mar 2019
Thank you so much! I had been stuck for so long! May I ask you a follow-up question?
I don't know if this is even possible to do in Matlab, but what I'm trying to do is this in words:
% for day = 1 and bottle = C-a or C-b or C-c or C-d,
insert a new row with day=1, species="Colp", bottle="Colp_avg"
and finalC = the average of finalC values for C-a,C-b,C-c,and C-d

Sign in to comment.