在matlab中如何储存和导入文件?

问题描述

在matlab中有时我们需要储存工作区的数值,例如储存和导入为mat文件excel文件

代码实现

储存

excel文件

1.存储为excel文件,使用函数xlswrite

filename = 'testdata.xlsx';
A = [12.7 5.02 -98 63.9 0 -.2 56];
xlswrite(filename,A)

1.存储为excel文件,使用函数xlswrite。:

filename = 'testdata.xlsx';
A = [12.7 5.02 -98 63.9 0 -.2 56];
save('testdata.xlsx', 'A');

mat文件

1.存储为mat文件,使用函数save

filename = 'testdata.xlsx';
A = [12.7 5.02 -98 63.9 0 -.2 56];
save('testdata', 'A');

注释:testdata为mat文件名。

存储多个数组时:

p = rand(1,10);
q = ones(10);
save('pqfile.mat','p','q')

或:

save pqfile.mat p q

导入

excel文件

readtable函数(只能读取double型)
filename = 'shuju.xlsx';
A = xlsread(filename);

限制范围:

filename = 'myExample.xlsx';
sheet = 1;
xlRange = 'B2:C3';
subsetA = xlsread(filename,sheet,xlRange)

xlsread函数

shuju = readtable("D:\my_document\latex\markdown\shuju.xlsx");

table型

%% 设置导入选项并导入数据
opts = spreadsheetImportOptions("NumVariables", 3);

% 指定工作表和范围
opts.Sheet = "Sheet1";
opts.DataRange = "A2:C14";

% 指定列名称和类型
opts.VariableNames = ["VarName1", "VarName2", "VarName3"];
opts.VariableTypes = ["string", "categorical", "double"];

% 指定变量属性
opts = setvaropts(opts, "VarName1", "WhitespaceRule", "preserve");
opts = setvaropts(opts, ["VarName1", "VarName2"], "EmptyFieldRule", "auto");

% 导入数据
shuju = readtable("D:\my_document\latex\markdown\shuju.xlsx", opts, "UseExcel", false);

 shuju = readtable("D:\my_document\latex\markdown\shuju.xlsx");

filename = 'shuju.xlsx';
A = xlsread(filename);

mat文件

load data123.mat

例子

例子一(excel写入字符串,数组,和读取)

在excel写入数组和字符串
D=D';
wen=wen';

在这里插入图片描述
在这里插入图片描述
写入字符串:

filename = 'csdnyi.xlsx';
xlswrite(filename, wen, 1, "A1:D1");%写入字符串

在这里插入图片描述

写入数组:

writematrix(D,filename,'Sheet',1,'Range','A2:D2');%写入数组

在后面加入几行数字:

M2 = [5 10 15 20 25; 30 35 40 45 50]
writematrix(M2,'csdnyi.xlsx','WriteMode','append')
读取数据(只读double数据)

两张表达形式都行:

M = readmatrix('csdnyi.xlsx','Sheet','Sheet1','Range','A2:D2')%表名为表的名字
% 或
M = readmatrix('csdnyi.xlsx','Sheet',1,'Range','A2:D2')% 第1个表

输出结果:

在这里插入图片描述

完整代码

在这里插入图片描述
在这里插入图片描述

D=D';
wen=wen';
filename = 'csdnyi.xlsx';
xlswrite(filename, wen, 1, "A1:D1");%写入字符串
writematrix(D,filename,'Sheet',1,'Range','A2:D2');%写入数组


M = readmatrix('csdnyi.xlsx','Sheet','Sheet1','Range','A2:D2')%表名为表的名字
% 或
M = readmatrix('csdnyi.xlsx','Sheet',1,'Range','A2:D2')% 第1个表
%%


% 在后面加入几行数字
M2 = [5 10 15 20 25; 30 35 40 45 50]
writematrix(M2,'csdnyi.xlsx','WriteMode','append')
% 将矩阵 M2 中的数据追加到电子表格文件中现有数据的下方。
M = readmatrix('csdnyi.xlsx','Sheet',1,'Range','A2:D4')% 第1个表

在这里插入图片描述

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值