Indexing based on part of a string

18 visualizzazioni (ultimi 30 giorni)
Kristine
Kristine il 6 Ott 2025 alle 23:17
Commentato: Kristine il 7 Ott 2025 alle 0:44
Hi y'all,
I want to pull information from a table based on two pieces of information. I want the values in column1 to be 01, and I want the values in column 2 to include the text "2025-02"
This code did not work:
No1 = table(table.column1 == 01, table.column2 == '2025-02*');
I can only get a list of the rows if I use the full text found in column2. But I want to find all of the rows where part of the text exists.

Risposta accettata

Paul
Paul il 6 Ott 2025 alle 23:23
column1 = [1;2;1;2;1]; column2 = ["2025-02 A";"A 2025-02";"B";"a 2025-02 a";"b 2025-02 b"];
T = table(column1,column2)
T = 5×2 table
column1 column2 _______ _____________ 1 "2025-02 A" 2 "A 2025-02" 1 "B" 2 "a 2025-02 a" 1 "b 2025-02 b"
T(T.column1 == 1 & contains(T.column2,"2025-02"),:)
ans = 2×2 table
column1 column2 _______ _____________ 1 "2025-02 A" 1 "b 2025-02 b"
  2 Commenti
Kristine
Kristine il 7 Ott 2025 alle 0:37
I get an error:
First argument must be text
Kristine
Kristine il 7 Ott 2025 alle 0:44
Never mind. I had to change the second column to string. I didn't realise it was interpreting it as catigorical. It works now. Thanks!!

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by