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

32 次查看(过去 30 天)
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!

采纳的回答

Walter Roberson
Walter Roberson 2020-6-17
filename = 'test.xlxs';
opt = detectImportOptions(filename);
opt.VariableUnitsRange = '2:2'; %row number
T1 = readtable(filename, opt);
T1.Properties.VariableUnits will be set.
  4 个评论
Walter Roberson
Walter Roberson 2020-6-17
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 2020-6-17
Thanks!
It seems this works:
opt.PreserveVariableNames = 1;

请先登录,再进行评论。

更多回答(1 个)

Ameer Hamza
Ameer Hamza 2020-6-17
Try this
units = readtable('test.xlsx', 'Range', 'B2:D2', 'ReadVariableNames', false);
  1 个评论
Leon
Leon 2020-6-17
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.

请先登录,再进行评论。

标签

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by