白骑士的Matlab教学基础篇 1.5 数据输入与输出

news/2024/9/24 11:29:25/

系列目录

上一篇:白骑士的Matlab教学基础篇 1.4 函数与脚本

        数据输入与输出是 MATLAB 编程中至关重要的环节,允许用户处理外部数据源、保存计算结果,并与其他软件工具进行数据交换。本文将详细介绍如何导入和导出数据、读写各种文件格式(包括文本文件、Excel 文件和 MAT 文件),以及如何连接数据库。掌握这些技能可以显著提升编程效率和数据处理能力,使得 MATLAB 的应用更加广泛和灵活。

导入与导出数据

导入数据

        MATLAB提供了多种导入数据的方法,可以从不同格式的文件中读取数据。以下是几种常用的方法:

从文本文件导入数据

data = load('data.txt');
disp(data);

        在上面的例子中,使用 ‘load‘ 函数从文本文件 ‘data.txt‘ 中导入数据,并显示出来。

从Excel文件导入数据

data = readtable('data.xlsx');
disp(data);

        在上面的例子中,使用 ‘readtable‘ 函数从Excel文件 ‘data.xlsx‘ 中读取数据,并以表格形式显示。

从MAT文件导入数据

load('data.mat');
disp(variableName);

        在上面的例子中,使用 ‘load‘ 函数从MAT文件 ‘data.mat‘ 中加载数据,并显示变量 ‘variableName‘ 的内容。

导出数据

        MATLAB也提供了多种导出数据的方法,可以将数据保存到不同格式的文件中。以下是几种常用的方法:

导出数据到文本文件

data = rand(10, 3); % 生成随机数据
save('output.txt', 'data', '-ascii');

        在上面的例子中,使用 ‘save‘ 函数将随机数据保存到文本文件 ‘output.txt‘ 中。

导出数据到Excel文件

data = table(rand(10, 3), 'VariableNames', {'A', 'B', 'C'});
writetable(data, 'output.xlsx');

        在上面的例子中,使用 ‘writetable‘ 函数将表格数据保存到Excel文件 ‘output.xlsx‘ 中。

导出数据到MAT文件:

save('output.mat', 'data');

        在上面的例子中,使用 ‘save‘ 函数将数据保存到MAT文件 ‘output.mat‘ 中。

文件读写(文本文件、Excel文件、MAT文件)

文本文件读写

        MATLAB可以方便地读写文本文件,以下是读写文本文件的基本方法:

读文本文件

fileID = fopen('data.txt', 'r');
data = fscanf(fileID, '%f');
fclose(fileID);
disp(data);

        在上面的例子中,使用 ‘fopen‘ 函数打开文本文件 ‘data.txt‘,使用 ‘fscanf‘ 函数读取数据,然后关闭文件。

写文本文件

fileID = fopen('output.txt', 'w');
fprintf(fileID, '%f\n', data);
fclose(fileID);

        在上面的例子中,使用 ‘fopen‘ 函数创建并打开文本文件 ‘output.txt‘,使用 ‘fprintf‘ 函数写入数据,然后关闭文件。

Excel文件读写

        MATLAB可以轻松地读写Excel文件,以下是读写Excel文件的基本方法:

读Excel文件

data = readtable('data.xlsx');
disp(data);

        在上面的例子中,使用 ‘readtable‘ 函数读取Excel文件 ‘data.xlsx‘ 中的数据,并显示。

写Excel文件

data = table(rand(10, 3), 'VariableNames', {'A', 'B', 'C'});
writetable(data, 'output.xlsx');

        在上面的例子中,使用 ‘writetable‘ 函数将表格数据写入Excel文件 ‘output.xlsx‘ 中。

MAT文件读写

        MAT文件是MATLAB专用的文件格式,用于存储变量和数据,以下是读写MAT文件的基本方法:

读MAT文件

load('data.mat');
disp(variableName);

        在上面的例子中,使用 ‘load‘ 函数从MAT文件 ‘data.mat‘ 中加载变量,并显示。

写MAT文件

save('output.mat', 'data');

        在上面的例子中,使用 ‘save‘ 函数将变量 ‘data‘ 保存到MAT文件 ‘output.mat‘ 中。

数据库连接

        MATLAB支持与各种数据库进行连接,通过数据库工具箱,可以方便地与关系数据库(如MySQL、SQL Server、Oracle等)进行交互。以下是连接MySQL数据库的基本步骤:

安装数据库工具箱

        确保已安装MATLAB数据库工具箱,可以通过MATLAB的‘Add-Ons‘功能安装。

创建数据库连接

datasource = 'MySQL_ODBC_DSN';
username = 'your_username';
password = 'your_password';
conn = database(datasource, username, password);

        在上面的例子中,创建了一个到MySQL数据库的连接,‘datasource‘ 是ODBC数据源名称,‘username‘ 和 ‘password‘ 是数据库的用户名和密码。

执行SQL查询

query = 'SELECT * FROM your_table';
data = fetch(conn, query);
disp(data);

        在上面的例子中,使用 ‘fetch‘ 函数执行SQL查询,并将结果存储在变量 ‘data‘ 中。

关闭数据库连接

close(conn);

        在上面的例子中,使用 ‘close‘ 函数关闭数据库连接。

总结

        通过掌握数据输入与输出的各种方法,用户可以使 MATLAB 编程更加高效,并能轻松地与其他数据源进行交互。这些技能不仅提升了数据处理能力,还增强了 MATLAB 的应用范围和灵活性。无论是读取外部数据、保存计算结果,还是与数据库进行交互,理解和运用这些技术都是 MATLAB 编程中不可或缺的一部分,有助于实现更复杂和实际的应用。

下一篇:白骑士的Matlab教学进阶篇 2.1 数据可视化​​​​​​​


http://www.ppmy.cn/news/1507414.html

相关文章

LangChain 安全特性全解析与实践指南

LangChain 安全特性全解析与实践指南 引言 在人工智能的浪潮中,LangChain 以其卓越的能力,成为开发大型语言模型(LLM)应用程序的佼佼者。然而,随着技术的发展,安全问题逐渐浮出水面。本文将深入探讨LangC…

STM32 | ADC+RS485(第十天)

点击上方"蓝字"关注我们 01、ADC概述 ADC, Analog-to-Digital Converter的缩写,指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号.例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的…

【网络安全】https协议的加密方案避免中间人攻击(MITM攻击)导致的数据泄露风险

目录 引言 概念准备 中间人 加密 数据摘要 && 数据指纹 数字签名 密钥加密 中间人攻击 CA证书 https加密的解决方案 个人主页:东洛的克莱斯韦克-CSDN博客 引言 http在应用层协议中是明文传输协议,它是通信双方传输数据时的一种约定。【…

Python学习笔记(六)

""" 演示对序列进行切片操作 """ # 切片;从一个序列中,取出一个子序列 # 语法[起始下标:结束下标:步长] # 这三个都不写也行,视为从头到尾步长为1 # 起始下标不写,视作从头开…

缓冲区溢出攻击示例

一、缓冲区溢出攻击原理 缓冲区溢出攻击是利用 缓冲区溢出漏洞 所进行的攻击行动。 缓冲区溢出是一种非常普遍、非常危险的漏洞,在各种操作系统、应用软件中广泛 存在 。 利用缓冲区溢出攻击,可以导致程序 运行 失败、系统关机、重新启动等后果。 缓冲区…

Python 常用内置函数

目录 1、enumerate函数 1.1、for循环中使用 1.2、enumerate指定索引的起始值 1.3、enumerate在线程中的作用 2、Map 函数 2.1、map()函数可以传多个迭代器对象 3、lambda表达式(匿名函数) 示例 4、sort函数和sorted函数 4.1、sort()函数 4.2、…

《机器学习by周志华》学习笔记-决策树-03

1、连续值处理 到目前为止,我们在决策树01、02中仅讨论了基于离散属性来生成决策树,而现实任务中常会遇到连续属性,所以在本章的学习中,我们将会讨论如何在决策树学习中使用连续属性。 1.1、概念 取值范围是连续的实数值或者整数值的属性就是「连续属性」,与离散属性相对…

kafka+zookeeper教程

1. 环境准备 环境准备 10.0.0.101&#xff0c;10.0.0.102&#xff0c;10.0.0.103&#xff0c; 101上做到102&#xff0c;103的免密登录 #为了方便执行命令和传输文件&#xff0c;这里先在101创建2个脚本 ]# cat > /usr/bin/data-rsync.sh <<EOF #!/bin/bash [ $# -ne…