How do I find a specific x values in an array(?) of x,y locations?
30 次查看(过去 30 天)
显示 更早的评论
I'm able to create a matrix of x, y values ,
coordinates = [1,2; 3,4; 10,5; 4,5];
and use find(x), to search in the array,
find(coordinates == 10);
however once I attempt to use a bigger matrix this function doesnt seem to work and I dont understand why,
find(locations==143.4955);
returns an empty matrix but I know there are x values with 143.4955 in the matrix, can anyone help me?
0 个评论
采纳的回答
Chunru
2022-1-8
编辑:Chunru
2022-1-23
% Now you have posted your data:
load('location array.mat')
whos
% Your data is 2670x2
locations
% floating point inside computer may not be exact
plot(locations(:,1)); hold on; plot(locations(:,2))
% Your data has values (in both columns) close to 143.4955
% In searching the closest points, you have to specify a suitable tolerance: 1e-4 below
% Search along the 1st column (you may have different criterion)
idx = find(abs(locations(:,1) - 143.4955) < 1e-4)
locations(idx, :)
2 个评论
更多回答(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!