Table: how to extract rows that contain a certain string and put those values into a new column?
31 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Xuan Yee
le 21 Mar 2020
Commenté : Walter Roberson
le 21 Mar 2020
eg if my table looks like this:
column 1 column 2 column 3 column 4
083282 128033 houseman eiuefief
983298 120942 penhouse wfdwhf
239832 108128 random idqiydqy
Say I want to extract all column 3 rows that contain the string "house" and put these values into column 5 so they look like this:
column 1 column 2 column 3 column 4 column 5
083282 128033 houseman eiuefief houseman
983298 120942 penhouse wfdwhf penhouse
239832 108128 random idqiydqy
Because column 5 has to have the same height as the other columns, the rows that don't contain the column can have NaN, 0, missing or something else to indicate that they don't contain anything:
column 1 column 2 column 3 column 4 column 5
083282 128033 houseman eiuefief houseman
983298 120942 penhouse wfdwhf penhouse
239832 108128 random idqiydqy NaN
0 commentaires
Réponse acceptée
Walter Roberson
le 21 Mar 2020
YourTable.NewVariableName = string(nan(height(YourTable, 1)));
mask = contains(YourTable{:,3}, "house");
YourTable.NewVariableName(mask) = YourTable{mask,:3};
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!