Effacer les filtres
Effacer les filtres

Using if and of two columns to find the value in another column

3 vues (au cours des 30 derniers jours)
Joe Sheckles
Joe Sheckles le 22 Fév 2020
Commenté : Joe Sheckles le 24 Fév 2020
I have a shape file. I cannot attach it since it is too large.
But I used the code to read as:
S = shaperead('conus_20160101_24h.grb-var0.shp')
Now, I am able to get my table.
There are five columns: "Fields", "Geometry", "X", "Y", "value", "datetime"
What I need is to find "value" based on "X" and "Y"
For instance, if X is between 78 and 79 and Y is between, 48 and 49, read the value in "Value".
Thanks,
J

Réponse acceptée

Matt J
Matt J le 22 Fév 2020
Here, I use T as the name of your table,
lookup=abs(T.X-78.5)<=0.5 & abs(T.Y-48.5)<=0.5;
T.Value(lookup),
  7 commentaires
Matt J
Matt J le 24 Fév 2020
Modifié(e) : Matt J le 24 Fév 2020
So, one solution would be to convert R1 to a table, and then use the steps I originally proposed, e.g.,
S=struct2table(R1);
S.X=-S.X; %for some reason all X were negative
lookup=abs(S.X-73.9668)<=1 & abs(S.Y-40.7995)<=1;
values = S.value(lookup);
Joe Sheckles
Joe Sheckles le 24 Fév 2020
Yes. This works perfectly. Thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by