How to delete in a table a row which contains a specific word

52 visualizaciones (últimos 30 días)
Hello, I'm writing to you for this particular modification of my table that I extracted from a long .csv file using the function readtable
I have a very big table of data 56644x8 (some colums are number/coordinates, others contain words).
I'm interested to eliminate the rows which contain the word "Alignment" at the 7th column.
The more difficult step is that I would create a code that recognize words like Allignment, Allignment_test, Alignment_ecc, Alignment2 because I don't know if the input data could change in the future.
I'll appreciate all type of helps, thank you very much
Andrea
Edit: I attached a similar file to mine, hope it will be helpful

Respuesta aceptada

Arif Hoq
Arif Hoq el 13 de Abr. de 2022
try with this:
A=readtable('andrea_file.csv','ReadVariableNames',false,'HeaderLines',3);
B=table2cell(A);
C=string(B)
C = 2×8 string array
"R" "-0.9" "-94.8" "-9.5" "-2" "-45" "Another_text_i_want_to mantain" "1" "R" "0.5" "5" "-2" "3" "0" "Alignment_Pin" "2"
[row col]=find(C=='Alignment_Pin');
C(row,:)=[]; % eleminating row that contains "Alignment_Pin"
C(:,[2 3])=[] % eleminating column 2 and 3
C = 1×6 string array
"R" "-9.5" "-2" "-45" "Another_text_i_want_to mantain" "1"

Más respuestas (1)

Arif Hoq
Arif Hoq el 8 de Abr. de 2022
as you did not attach your file, i have attached my own created data
A=readtable('myfile.xlsx','ReadVariableNames',false);
B=table2array(A);
C=string(B);
[row col]=find(C=='Alignment');
C(row,:)=[];
  3 comentarios
Arif Hoq
Arif Hoq el 12 de Abr. de 2022
is this your expectation?
A=readtable('andrea_file.csv','ReadVariableNames',false,'HeaderLines',3);
B=table2array(A);
C=string(B);
[row col]=find(C=='Alignment_Pin');
C(row,:)=[]; % eleminating row that contains "Alignment_Pin"
C(:,[2 3])=[] % eleminating column 2 and 3
Andrea Bresciani
Andrea Bresciani el 12 de Abr. de 2022
Error using table2array (line 37)
Unable to concatenate the table variables 'Var1' and 'Var2', because their types are cell and double.
Error in Import_Matrix_status (line 5)
B=table2array(A);
Hi, using that code fives me this (the same) error.. I think the problematic is the command "table2array" that is not permitted..Maybe I can work directly on the table A to elimate row bypassing B?
Thanks

Iniciar sesión para comentar.

Categorías

Más información sobre Tables en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by