Borrar filtros
Borrar filtros

Pulling Columns by Name in CSV Files

52 visualizaciones (últimos 30 días)
Samantha
Samantha el 24 de Jun. de 2024 a las 14:39
Comentada: Samantha el 24 de Jun. de 2024 a las 19:46
Hello! I am having trouble with pulling specific data. I am trying to read a .csv file and grab specific columns by name, not by the column number/position. The data I a looking to grab doesnt't always end up in the same column.
CurrentData = readtable('data.csv','ReadVariableNames',1);
TimeData = CurrentData(:, 1); % Column A data ( time in seconds )
I have time data as a specific column since it is always in the first column. Here is some code I've tried from other threads but I now have an issue with the size -
[data, text] = readtable('5DV20WLRCJ010__671_edited.csv');
Throttle = strcmpi(text(1,:),'d ThrottleAct');
A = data(:,Throttle);
'd ThrottleAct' is the column I am trying to pull, but the data too large when I try this method - that and I don't fully understand it, haha. The data I am using is a 2567x468 table, and sometimes there are more or less variables.
Here is the error I get:
Error using readtable
Too many output arguments.
Error in project_testing (line 22)
[data, text] = readtable('data.csv');
I think it is having trouble with the read table, but I'm not sure of a better way to read the data and column headers as well as keeping it in this format.
Thanks for the help in advance

Respuesta aceptada

Cris LaPierre
Cris LaPierre el 24 de Jun. de 2024 a las 15:10
Editada: Cris LaPierre el 24 de Jun. de 2024 a las 15:11
See this page: Access Data in Tables
Also, consider using readtimetable instead of a readtable.
CurrentData = readtimetable('data.csv','ReadVariableNames',1);
TimeData = CurrentData(:, 1); % Column A data ( time in seconds )
Throttle = currentData.("d ThrottleAct")
  3 comentarios
Cris LaPierre
Cris LaPierre el 24 de Jun. de 2024 a las 19:19
Timetables have some additional methods that can be helpful when working wiht time-series data. Basically, it recognizes that the data is tied to specific time points, and allows you to leverage that when combining or resampling your data.
If you don't need to do that, then just useing readtable is fine.
Samantha
Samantha el 24 de Jun. de 2024 a las 19:46
I think I'll use the readtimetable function then, thank you for explaining it! It sounds like it'll come in handy

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by