How to Check if a cell equals a word in a table

24 Ansichten (letzte 30 Tage)
John Leben
John Leben am 15 Apr. 2021
Bearbeitet: Matt J am 15 Apr. 2021
Does anyone know how to check a string in a cell in a table to detect if it is a specific word? For example, I have a table that has a bunch of rows. In each row is 1 word. I want to figure out how often a word appears in the table for a specific column.
My approach was to use a while loop with an if statement that would increase a variable every time the logic returned true. The logic is supposed to return true if the cell in the table is a specific string such as 'Aluminum' or 'plastic'. However, MATLAB does not allow me to use the == operator in a table. Does anyone know if there is a workaround?
My approach that did not work
x = readtable('litterati_processed_data.csv')
y = 1;
paper = 0;
otherstuff = 0;
while y <= 5936
if x(y, 11) == 'paper'
paper = paper + 1;
else
otherstuff = otherstuff + 1;
end
y + 1;
end

Antworten (1)

Matt J
Matt J am 15 Apr. 2021
Bearbeitet: Matt J am 15 Apr. 2021
As an example,
x=cell2table({'dog','paper','cat','fish','paper'}.')
x = 5×1 table
Var1 _________ {'dog' } {'paper'} {'cat' } {'fish' } {'paper'}
paper=nnz( string(x{:,1})=="paper")
paper = 2
otherstuff=size(x,1)-paper,
otherstuff = 3

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by