优化以下代码 ,以便于移植 clc;clear;clear all; %导入mat文件数据 names={'B0005';'B0006';'B0007';'B0018'}; %要读取的数据文件名 Path='D:\matlab_work\锂电池数据集\NASA锂离子电池算法预测训练\5.+Battery+Data+Set\DATA\BatteryAgingARC-FY08Q4\'; for i=1:length(names) load(fullfile(Path,names{i})) end File = dir(fullfile(Path,'*.mat')); % 显示文件夹下所有符合后缀名为.xlsx文件的完整信息 FileNames = {File.name}; % MatNames=strrep(FileNames, '.mat', ''); % 创建一个字典,存储不同文件类型对应的图表编号 fileTypeMap = containers.Map({'B0005', 'B0006', 'B0007', 'B0018'}, {'B5', 'B6', 'B7', 'B18'}); % 获取当前文件名的文件类型 fileType = ''; matfile=''; % str=[5,6,7,18]; for i=1:length(FileNames) if contains(cell2mat(FileNames(i)), 'B0005') fileType = 'B0005'; matfile=B0005; elseif contains(cell2mat(FileNames(i)), 'B0006') fileType = 'B0006'; matfile=B0006; elseif contains(cell2mat(FileNames(i)), 'B0007') fileType = 'B0007'; matfile=B0007; elseif contains(cell2mat(FileNames(i)), 'B0018') fileType = 'B0018'; matfile=B0018; end % 按照对应执行程序 if ~isempty(fileType) %读取电池的所有数据 data=getdata(matfile); %修改结构体名称 eval([fileTypeMap(fileType) '= data;']); clear data; end end
时间: 2024-04-26 10:24:54 浏览: 195
clc;
clear;
%导入mat文件数据
names={'B0005';'B0006';'B0007';'B0018'};
%要读取的数据文件名
Path='D:\matlab_work\锂电池数据集\NASA锂离子电池算法预测训练\5.+Battery+Data+Set\DATA\BatteryAgingARC-FY08Q4\';
for i=1:length(names)
load(fullfile(Path,names{i}));
end
%获取所有.mat文件名
File = dir(fullfile(Path,'*.mat'));
FileNames = {File.name};
%创建一个字典,存储不同文件类型对应的图表编号
fileTypeMap = containers.Map({'B0005', 'B0006', 'B0007', 'B0018'}, {'B5', 'B6', 'B7', 'B18'});
%读取电池的所有数据
for i=1:length(FileNames)
fileType = '';
matfile = '';
if contains(FileNames{i}, names)
fileType = FileNames{i};
matfile=load(fullfile(Path, fileType));
%修改结构体名称
eval([fileTypeMap(fileType) '= matfile.data;']);
clear matfile;
end
end
阅读全文