How to read units on a 2nd row out of an Excel file?

30 visualizaciones (últimos 30 días)
Leon
Leon el 16 de Jun. de 2020
Comentada: Leon el 17 de Jun. de 2020
Attached is an example Excel file.
I'm using this command to read the info out of the file:
T1 = readtable('test.xlsx', 'PreserveVariableNames',true);
Here is my question. How do I read the units out of the 2nd row?
Thanks!

Respuesta aceptada

Walter Roberson
Walter Roberson el 17 de Jun. de 2020
filename = 'test.xlxs';
opt = detectImportOptions(filename);
opt.VariableUnitsRange = '2:2'; %row number
T1 = readtable(filename, opt);
T1.Properties.VariableUnits will be set.
  4 comentarios
Walter Roberson
Walter Roberson el 17 de Jun. de 2020
you cannot mix named options with the option structure. There is a field you can set in opt to preserve variable names but I would need to to look up the proper name.
Leon
Leon el 17 de Jun. de 2020
Thanks!
It seems this works:
opt.PreserveVariableNames = 1;

Iniciar sesión para comentar.

Más respuestas (1)

Ameer Hamza
Ameer Hamza el 17 de Jun. de 2020
Try this
units = readtable('test.xlsx', 'Range', 'B2:D2', 'ReadVariableNames', false);
  1 comentario
Leon
Leon el 17 de Jun. de 2020
Many thanks!
I'm building a set of tools and this function needs to work for all files without knowing the column number. The units will always be on the 2nd row. Is there a way I could do without specifying the 'B2:D2' thing?
Another question. Once the units are read out. How do I call the text string? I tried the below:
a=units.(1)
But, what I got is a cell array: {'DEG/C'}, instead of a string.

Iniciar sesión para comentar.

Etiquetas

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