导入数据

打开任务
要在 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 时间表导入。如果数据的第一列不是
datetime或duration类型,则表中会前追加一个包含duration值的列作为新的第一列,对于数据的每行,该表从 0 开始,并且按 1 递增。列向量 - 数据作为 MATLAB 列向量导入。数据的每列都成为一个列向量,每个列向量变量的名称都派生自数据的对应列的标题。
数值数组 - 数据作为数值矩阵导入。
字符串数组 - 数据作为字符串矩阵导入。
元胞数组 - 数据作为元胞矩阵导入。
如果选择此选项,则任务会使用要导入的文件的第一行为导入的数据指定变量名称。如果不选择此选项,则任务会为导入的数据分配默认变量名称,并读取要作为数据导入的文件的第一行。此参数在将文本文件或电子表格作为表或时间表导入时可用。
如果选择此选项,则默认情况下,任务会在名为 opts 的变量中保留导入选项。如果不选择此选项,则 opts 变量将在导入完成后被清除。此参数在导入文本文件或电子表格时可用。
显示结果
选择此选项可将导入的数据显示为实时编辑器任务的输出。
如果选择此选项,则您的导入选项将显示为实时编辑器任务的输出。如果不选择此选项,则导入选项不会出现。此参数在导入文本文件或电子表格时可用。
限制
版本历史记录
在 R2023a 中推出您可以导入 HDF5 数据。使用此任务,您可以:
以交互方式可视化 HDF5 数据的结构和内容。
搜索特定的组、数据集和属性。
以图形方式选择和取消选择要导入的组、数据集和属性。
生成可重用的 MATLAB 代码以导入 HDF5 数据。
您可以导入 netCDF 数据。使用此任务,您可以:
以交互方式可视化 netCDF 数据的结构和内容。
搜索特定的变量和属性。
以图形方式选择和取消选择要导入的变量和属性。
生成可重用的 MATLAB 代码来导入 netCDF 数据。
另请参阅
函数
readtable|readtimetable|audioread|imread|VideoReader|h5read|h5readatt|ncread|ncreadatt
对象
App
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- 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)