How to give range of cells different variable names?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Abigail
el 12 de Ag. de 2024
Comentada: Voss
el 13 de Ag. de 2024
Hello!
I am collecting data from a range of cells from an .xlsx file using the readmatrix function as so:
Datafiles(j).data = readmatrix(Data,'Sheet','Report','Range','M18:N18','FileType','spreadsheet');
Then I populate that data into a new excel file like so:
CurrentData = {Datafiles.data}';
TABLE_Pass = table(CurrentData);
TABLE = vertcat(TABLE_Pass);
Now, my problem is, it spits out the data in 2 columns labeled "CurrentData_1" "CurrentData_2" and I want to specify the name of the second column.
When I create a second variable name, it gives me 4 columns with the information doubled.
Any tips on how to give the data 2 separate variable names?
0 comentarios
Respuesta aceptada
Star Strider
el 12 de Ag. de 2024
It might help to have the file.
Otherwise, conbbsider specifying the variable names as (for example):
TABLE.Properties.VariableNames = {'Variable Name 1','Variable Name 2'}
of course using the varialbe names you want to assign to them.
.
4 comentarios
Star Strider
el 13 de Ag. de 2024
I don’t know what they should be called, however this is how to change their names. Insert the correct names for ‘Column 1’ and ‘Column 2’. (In R2023b, spaces and some other special characters are permitted.)
Data = 'CurrentData.xlsx';
data = readtable(Data)
data.Properties.VariableNames = {'Column 1','Column 2'}
.
Más respuestas (1)
Voss
el 12 de Ag. de 2024
Try replacing this
CurrentData = {Datafiles.data}';
TABLE_Pass = table(CurrentData);
TABLE = vertcat(TABLE_Pass);
with this
CurrentData = vertcat(Datafiles.data);
TABLE = array2table(CurrentData,'VariableNames',{'x','y'});
and replace 'x' and 'y' with the variable names you want to use.
2 comentarios
Voss
el 13 de Ag. de 2024
Don't create a cell array of 1-by-2 vectors by doing this:
CurrentData = {Datafiles.data}';
because that will lead to a table with one variable, which is a cell array of 1-by-2 vectors.
Instead, create an N-by-2 matrix by doing what I showed in my answer:
CurrentData = vertcat(Datafiles.data);
because that will lead to a table with two variables, which you can name individually.
Ver también
Categorías
Más información sobre Data Import from MATLAB en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!