How to extract data from one column using the data from the two other columns

4 次查看(过去 30 天)
I have data with 3 columns, A B and C. A contains serial dates, and B contains data that corresponds to the serial date in column A. in column C, I have a much shorter column of select serial dates that I have to have the correspoding data for from column B. Is there a way to use column C to search column B and extract only the data that corresponds to the dates in column C?
Column A is all of the serial dates, column B is the soil moisture retrieved on that serial date in column A, and column C are the select serial dates that I need column B values for; so I want to be able to make an array of the column B values that correspond to the selected column C serial dates.
I have having problems putting this question into words properly, so if I was unclear i apologize and I can try to elaborate. Thank you!

回答(1 个)

dpb
dpb 2020-12-3
res=B(ismember(A,C));
  2 个评论
Claire
Claire 2020-12-4
编辑:Claire 2020-12-4
Hello, thanks for your help! this worked, but it returned far less values than i expected
i think it is only when the rows of A and C are adjacent and equal each other. in column C, i am missing a lot of datetimes that are present in A, so the datetimes in C are not organized or aligned with column A. sorry for not being clear about that!
is it possible to do this same process, but with any values of C that match those in A, regardless of whether or not the same dates are in the same row?
dpb
dpb 2020-12-4
ismember is position independent.
The problem is more likely one of floating point precision -- try ismembertol

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by