导入数据
打开任务
要在 MATLAB 编辑器中将导入数据任务添加到实时脚本中,请执行以下操作:
在实时编辑器选项卡上,选择任务 > 导入数据。
在脚本的代码块中,键入相关关键字,例如
import
、read
或load
。从建议的命令自动填充项中选择Import Data
。
示例
从单个文件导入
以交互方式从图像文件中导入数据。
在实时编辑器中打开导入数据任务。选择源文件,然后在显示结果部分中选择导入的数据选项以显示图像。该任务将图像数据保存在工作区的一个变量中。变量名称基于源文件的名称。
要查看此任务生成的代码,请点击任务参数区域底部的显示代码展开任务显示。
% Import image cloudCombined = imread("<path_to_file>\cloudCombined.jpg"); % Display results imshow(cloudCombined); title("Image Data From cloudCombined.jpg");
使用生成的代码从多个文件导入
以交互方式生成可重用的 MATLAB 代码,以将一个 Microsoft® Excel® 电子表格导入您的工作区中。该电子表格包含马萨诸塞州波士顿 2021 年 1 月的天气数据。使用生成的代码作为模板,以编程方式导入 2021 年所有 12 个月的电子表格。
在实时编辑器中打开导入数据任务。在文件字段中输入第一个电子表格的文件名 01_weather.xlsx
。
要查看此任务生成的代码,请点击任务参数区域底部的显示代码展开任务显示。
% Set up the Import Options and import the data opts = spreadsheetImportOptions("NumVariables", 12); % Specify sheet and range opts.Sheet = "3179575"; opts.DataRange = "A2:L32"; % Specify column names and types opts.VariableNames = ["STATION", "NAME", "LATITUDE", "LONGITUDE", "ELEVATION", "DATE", "AWND", "PRCP", "SNOW", "TAVG", "TMAX", "TMIN"]; opts.VariableTypes = ["categorical", "categorical", "double", "double", "double", "datetime", "double", "double", "double", "double", "double", "double"]; % Specify variable properties opts = setvaropts(opts, ["STATION", "NAME"], "EmptyFieldRule", "auto"); % Import the data x01_weather = readtable("<path_to_file>\01_weather.xlsx", opts, "UseExcel", false); % Clear temporary variables clear opts
生成的代码分成几个步骤,并用注释提供文档说明。进行以下更改以自动导入所有 12 个月的电子表格:
创建一个
yearWeather
表,您可以将每个月的电子表格中的数据追加到该表中。创建一个包含表示每个月的字符串的
namePrefixes
向量。使用
namePrefixes
创建一个文件名向量。使用十二个文件名的常规模式。根据每个月的天数创建一个由若干数据范围组成的向量。在生成的代码中,范围跨 A 列到 L 列、第 2 行到第 32 行(比一月的天数大 1)。
使用
for
循环和您创建的变量导入所有文件,并将它们追加到yearWeather
中。
% Changes #1 and #2: Create variables yearWeather = table(); namePrefixes = ["01" "02" "03" "04" "05" "06" "07" "08" "09" ... "10" "11" "12"]; % Set up the Import Options and sheet opts = spreadsheetImportOptions("NumVariables", 12); opts.Sheet = "3179575"; % Specify column names and types opts.VariableNames = ["STATION", "NAME", "LATITUDE", "LONGITUDE", ... "ELEVATION", "DATE", "AWND", "PRCP", "SNOW", ... "TAVG", "TMAX", "TMIN"]; opts.VariableTypes = ["categorical", "categorical", "double", ... "double", "double", "datetime", "double", ... "double", "double", "double", "double", "double"]; % Specify variable properties opts = setvaropts(opts, ["STATION", "NAME"], "EmptyFieldRule", "auto"); % Changes #3 and #4: Create vectors of filenames and data ranges fileNames = namePrefixes + "_weather.xlsx"; dataRanges = "A2:L"+string(day(datetime(2021,1,31)+calmonths(0:11))+1); % Change #5: Import all files and append them in yearWeather for i = 1:length(namePrefixes) fileName = fileNames(i); opts.DataRange = dataRanges(i); monthWeather = readtable(fileName, opts, "UseExcel", false); yearWeather = [yearWeather; monthWeather]; end % Clear temporary variables clear opts
使用导入的数据绘制 2021 年波士顿每天的低温和高温。
plot(yearWeather.DATE,[yearWeather.TMIN yearWeather.TMAX]) hold on xlabel("Date") ylabel("Temperature (℉)") legend("Low Temperature","High Temperature",location="Northwest")
相关示例
参数
文件
— 要导入的文件的路径
无默认值
您可以输入路径或使用浏览按钮。您选择导入的文件的类型确定在该任务中您可以选择的其他参数。
工作表
— 要导入的电子表格文件的工作表
工作表
导入电子表格文件时,选择要导入的工作表。
类型
— 导入的数据的 MATLAB 数据类型
表 (默认) | 时间表 | 列向量 | 数值数组 | 字符串数组 | 元胞数组
导入文本文件或电子表格时,您可以选择导入的数据的 MATLAB 数据类型:
表 - 数据作为 MATLAB 表导入。数据的每列是表的一个变量,数据的每行是表的一行。表的变量名称派生自数据的列标题。
时间表 - 数据作为 MATLAB 时间表导入。如果数据的第一列不是
datetime
或duration
类型,则表中会前追加一个包含duration
值的列作为新的第一列,对于数据的每行,该表从 0 开始,并且按 1 递增。列向量 - 数据作为 MATLAB 列向量导入。数据的每列都成为一个列向量,每个列向量变量的名称都派生自数据的对应列的标题。
数值数组 - 数据作为数值矩阵导入。
字符串数组 - 数据作为字符串矩阵导入。
元胞数组 - 数据作为元胞矩阵导入。
返回导入选项
— 是否保留导入选项
on
(默认) | off
如果选择此选项,则默认情况下,任务会在名为 opts
的变量中保留导入选项。如果不选择此选项,则 opts
变量将在导入完成后被清除。此参数在导入文本文件或电子表格时可用。
导入的数据
— 是否将数据显示为输出
on
(默认) | off
选择此选项可将导入的数据显示为实时编辑器任务的输出。
显示导入选项
— 是否显示导入选项
on
(默认) | off
如果选择此选项,则您的导入选项将显示为实时编辑器任务的输出。如果不选择此选项,则导入选项不会出现。此参数在导入文本文件或电子表格时可用。
局限性
版本历史记录
在 R2023a 中推出R2024a: 导入 HDF5 数据
您可以导入 HDF5 数据。使用此任务,您可以:
以交互方式可视化 HDF5 数据的结构和内容。
搜索特定的组、数据集和属性。
以图形方式选择和取消选择要导入的组、数据集和属性。
生成可重用的 MATLAB 代码以导入 HDF5 数据。
R2023b: 导入 netCDF 数据
您可以导入 netCDF 数据。使用此任务,您可以:
以交互方式可视化 netCDF 数据的结构和内容。
搜索特定的变量和属性。
以图形方式选择和取消选择要导入的变量和属性。
生成可重用的 MATLAB 代码来导入 netCDF 数据。
另请参阅
函数
readtable
|readtimetable
|audioread
|imread
|VideoReader
|h5read
|h5readatt
|ncread
|ncreadatt
对象
App
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)