How to include values starting from the nth instance of a value?
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I have a data set where column 4 indicates a type of event. Columns 7-27 in this same data set are the raw data I am working with. I want to write two pieces of code where I first, include all the raw data (columns 7-27) until the a certain event occurs for the first time (column 4), and second, include all the raw data (columns 7-27) after the event occurs for the last time (column 4).
What I have:
Here I want to include all the raw data from the lines where column 4 equals "Basket Glitch".
baskets_data_participant = data_in(data_in(:,4) == "Basket Glitch", 7:end);
What I need:
1) I want to change the above code to include all the raw data up to the first instance of "Basket Glitch".
2) I want to change the above code to include all the raw data after the last instance of "Basket Glitch"
How would I go about doing that?
0 个评论
采纳的回答
Voss
2022-3-14
bg_idx = find(strcmp(data_in(:,4),'Basket Glitch'));
% include all the raw data up to the first instance of "Basket Glitch":
data_out = data_in(1:bg_idx(1),7:end);
% include all the raw data after the last instance of "Basket Glitch":
data_out = data_in(bg_idx(end)+1:end,7:end);
Of course, you have to decide what to do when there are no instances of "Basket Glitch" in column 4.
6 个评论
Voss
2022-3-15
@little brain You're welcome! If that answers your question, please mark my answer as 'Accepted'. I appreciate it!
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!