# How to store a new variable based on a range from another column?

1 view (last 30 days)
Andrew Lackey on 2 Sep 2021
Commented: Andrew Lackey on 2 Sep 2021
I have a .txt file with 2 columns (X,Y).
I would like to create a variable that represents a range of Y, but have that range based on a range of X that I select.
For example:
X = [-10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10]
Y = [-10, -9, -8, -7, -6, 0, 6, 7, 8, 9, 10]
Now I want Variable Y_a to be a range of y, thats dependant on X.
For example, if i want Y_a to be all of the y values that are equal to or greater than x = -4 it would be:
Y_a = -7, -6, 0, 6, 7, 8, 9, 10
If i want Y_a to be equal to Y numbers when x is less than -2 it would be:
Y_a = -10, -9, -8, -7
Does that make sense?
Andrew Lackey on 2 Sep 2021
For example I am trying to run this code:
Y_a = Y(X==[0:1]);
Can I use an ==(range)?

Matt J on 2 Sep 2021
Edited: Matt J on 2 Sep 2021
X = [-10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10];
Y = [-10, -9, -8, -7, -6, 0, 6, 7, 8, 9, 10];
Y_a=Y(-4<=X & X<=8)
Y_a = 1×7
-7 -6 0 6 7 8 9
Andrew Lackey on 2 Sep 2021
Thank you so much! That works

### Community Treasure Hunt

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

Start Hunting!