defining value in two cells?

1 view (last 30 days)
SEPIDEH
SEPIDEH on 25 Oct 2015
Commented: Image Analyst on 26 Oct 2015
Hi,
I have an excel file which contains 4 columns. First column is time based on seconds and the other three are my function. How is it possible to find a time for specific value in the time column? let me give an example:
I want to define where is this value in the second column: 0.7636 and I found it manually in excel that it is located in time column between 6960[s]-7020[s].
So, if I have for example a couple of values, and also considering different functions then it is difficult to do it manually.
I hope to hear your support. Thanks Sepideh

Accepted Answer

Image Analyst
Image Analyst on 25 Oct 2015
See the FAQ: http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F, but I would not recommend comparing the vector to find that value exactly - I'd use the min function:
data = rand(3000,2); % Sample data - replace with your own.
targetValue = 0.7636; % The desired value you hope to find.
% Get differences between actual values and desired value.
differences = abs(data(:, 2) - targetValue);
% Find the row with the closest value.
[~, row] = min(differences);
% Extract the data from that closest row.
targetTime = data(row, 1)
closestValue = data(row, 2)
  3 Comments
SEPIDEH
SEPIDEH on 26 Oct 2015
Hi,
I solved this problem. Many thanks for help
Image Analyst
Image Analyst on 26 Oct 2015
You're welcome. I recommend readtable(), or readxls() instead of dataset().

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!