How should I extract the data

1 visualización (últimos 30 días)
Shubham Pathare
Shubham Pathare el 14 de Feb. de 2022
Respondida: Seth Furman el 28 de Feb. de 2022
for a=1:count_rows
if Tablename.Var1(a,1)<0 && Tablename.Var1(a+1,1)==0
c=a;
end
if Tablename.Var1(a,1)==0 && Tablename.Var1(a,1)<0
c=d;
d=a;
newvar1=['Var1',num2str(count1)];
newvar2=['var2',num2str(count1)];
newvar3=['var3',num2str(count1)];
assignin('caller',newvar1,Var1(c:d,1));
assignin('caller',newvar2,Var2(c:d,1));
assignin('caller',newvar3,Var3(c:d,1));
count1=1+count1;
end
end
I have text file with four columns and few values of one columns are like below and I want to create new table for each set of cells having value 0 and they should be in between positive 1 only(unlined 0). New table should also contains remaining three corresponding values.
Then I need to perform exact same operations (eg.calculating avg) on newly created table. I used the for loop but then it will be difficulat to perform futher operations on newly created varibales as they have dynamic names.
Column 1
1
1
0 -1st new table
0 -1st new table
0 -1st new table
0 -1st new table
1
1
1
0 -ignore
0 -ignore
0 -ignore
-1
-1
-1
-1
0 -ignore
0 -ignore
0 -ignore
1
1
1
0 -Should be in 2nd new table
0 Should be in 2nd new table
0 Should be in 2nd new table
1
1
1
1
  2 comentarios
Rik
Rik el 14 de Feb. de 2022
Please attach an example file and post the code you have already tried.
Shubham Pathare
Shubham Pathare el 14 de Feb. de 2022
Pleasee see the updated post

Iniciar sesión para comentar.

Respuesta aceptada

Seth Furman
Seth Furman el 28 de Feb. de 2022
Read tabular text data into a table
t = readtable("https://www.mathworks.com/matlabcentral/answers/uploaded_files/894130/Sample.txt")
t = 31×4 table
Var1 Var2 Var3 Var4 ____ ____ ______ ______ 1 1 1.5907 42.882 1 1.2 1.5937 42.963 1 1.3 1.5967 43.044 1 1.2 1.5997 43.124 0 1.3 1.6027 43.205 0 1.4 1.6057 43.286 0 1.5 1.6087 43.367 0 1.6 1.6117 43.448 1 3 1.6147 43.529 1 2.3 1.6177 43.61 1 2.4 1.6207 43.69 0 2.5 1.6237 43.771 0 3.3 1.6267 43.852 0 3.4 1.6297 43.933 -1 3.2 1.6327 44.014 -1 1 1.6357 44.095
Use logical indexing to extract rows that meet criteria
t(t.Var1 == 0, :)
ans = 13×4 table
Var1 Var2 Var3 Var4 ____ ____ ______ ______ 0 1.3 1.6027 43.205 0 1.4 1.6057 43.286 0 1.5 1.6087 43.367 0 1.6 1.6117 43.448 0 2.5 1.6237 43.771 0 3.3 1.6267 43.852 0 3.4 1.6297 43.933 0 1.3 1.6447 44.337 0 1.4 1.6477 44.418 0 1.5 1.6507 44.499 0 2.3 1.6627 44.823 0 2.4 1.6657 44.904 0 1 1.6687 44.984

Más respuestas (0)

Etiquetas

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by