Table: how to extract rows that contain a certain string and put those values into a new column?
30 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Walter Roberson
2020-3-21
YourTable.NewVariableName = string(nan(height(YourTable, 1)));
mask = contains(YourTable{:,3}, "house");
YourTable.NewVariableName(mask) = YourTable{mask,:3};
2 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!