`
zhaole609
  • 浏览: 342743 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

如何用matlab把数据集导入数据库

 
阅读更多

最近要新几个好的新算法,要用到数据集,老师要求我们把数据集导入数据库,方便开发。所以就学习着matlab,但是从网上下载的数据一般都是矩阵类型的怎么才能导入数据库呢?网上找了找,怎么也没找到全适的答案,自己就试着把解决方法写出了,以方便以后的使用,方便大家。

这里讲的是怎样用matlab链接数据库。

http://www.matlabsky.com/thread-9275-1-1.html

MatlabSQL Server数据库编程-Godman

 

1.
配置数据源

“控制面板”----“管理工具”——“数据源(ODBC)”——“添加”——“创建数据源”。具体操作见“数据源配置-SQL Server.gif

 

 

2.
建立链接对象——database

调用格式:

conna=database(‘datasourcename’,’username’,’password’);

conna=database('db_sql_server','sa','sa123456789');

%数据库名,用户名,密码;

其中db_sql_server为上文中创建的数据源名称,其余为SQL安装时输入的用户名和密码

3.
建立并打开游标——exec

调用格式:

curs=exec(conna,'sqlquery')

curs=exec(conna,'select * from database')

其中conna为上文中链接对象,select * from database表示从表database中选择所有的数据.

4.
把数据库中的数据读取到Matlab中——fetch

调用格式:

curs=fetch(curs,RowLimit);

Data=curs.Data%把读取到的数据用变量Data保存.

curs=fetch(curs)

把所有的数据一次全部读取到Matlab中,RowLimit为每次读取的数据参数的行数,默认为全部读取,但是全部读取会很费时间(和计算机性能很大关系)。

上述四点是matlab从数据库文件中读取数据到matlab中的基本步骤。

实例:

timeoutA=logintimeout(5);%设置连接数据库的时间

conn = database('db_sql_server','sa','sa123456789');

%数据库名,用户名,密码

ping(conn);

cursorA=exec(conn,'SELECT * FROM Sh');

%/执行select语句,Sh:数据表名

setdbprefs ('DataReturnFormat','cellarray')
;

%返回数据类型为元包(cell)型,默认为CELL型。要通过cell2mat()转换格式

cursorA=fetch(cursorA);

%将数据库中的内容写入MATLAB工作空间

AA=cursorA.Data

%得到数据库中的数据

%关闭连接

close(cursorA)

close(conn);


 

其余操作如插入、删除、更新等可参加以前写的基于Access数据库的相关内容,下列函数可供参考,具体用法可以在Matlab中通过help查询。

数据库工具箱函数列表
数据库访问函数
clearwarnings 清除数据库连接警告
close 关闭数据库连接
commit 数据库改变参数
database 连接数据库
exec 执行SQL语句和打开油标
get 得到数据库属性
insert 导出MATLAB单元数组数据到数据库表
isconnection 判断数据库连接是否有效
isreadonly 判断数据库连接是否只读
ping 得到数据库连接信息
rollback 撤销数据库变化
set 设置数据库连接属性
sql2native 转换JDBC SQL 语法为系统本身的SQL语法
update 用MATLAB单元数组数据代替数据库表的数据
数据库游标访问函数
attr 获得的数据集的列属性
close 关闭游标
cols 获得的数据集的列数值
columnnames 获得的数据集的列名称
fetch 导入数据到MATLAB单元数组
get 得到游标对象属性
querytimeout 数据库SQL查询成功的时间
rows 获取数据集的行数
set 设置游标获取的行限制
width 获取数据集的列宽
数据库元数据函数
bestrowid 得到数据库表唯一行标识
columnprivileges 得到数据库列优先权
columns 得到数据库表列名称
crossreference 得到主健和外健信息
dmd 创建数据库元数据对象
exportedkeys 得到导出外部健信息
get 得到数据库元数据属性
importedkeys 得到导入外健信息
indexinfo 得到数据库表的索引和统计
primarykeys 从数据库表或结构得到主健信息
procedurecolumns 得到目录存储程序参数和结果列
procedures 得到目录存储程序
supports 判断是否支持数据库元数据
tableprivileges 得到数据库表优先权
tables 得到数据库表名称
versioncolumns 得到自动更新表列

按照上面的操作自己写一下insert语句。

 conn=database('dataset','sa','admin609');for i=1:12103,insert(conn,'dataset',{'index0','index1','index2','index3','index4','index5','index6','index7','index8','index9','index10','index11','index12','index13','index14','index15','index16','index17','index18','index19','index20','index21','index22','index23','index24','index25','index26','index27','index28','index29','index30','index31','index32','index33','index34','index35','index36','index37','index38','index39','index40','index41','index42','index43','index44','index45','index46','index47','index48','index49','index50','index51','index52','index53','index54','index55','index56','index57','index58','index59','index60','index61','index62','index63'},B(i,:)),end

写个for循环搞定了。

具体matlab的操作参见:http://math.ecnu.edu.cn/sxsykc/jxnr/mat5.htm#_Toc378651269

分享到:
评论

相关推荐

    汇总minist数据集及matlab读取代码

    MNIST(Modified National Institute of Standards and ...总之,MNIST数据集是机器学习初学者和专家的宝贵资源,通过它,你可以深入了解和实践图像分类问题,以及如何使用MATLAB这样的工具进行数据处理和模型构建。

    将ORL人脸库导入MATLAB的结果

    将ORL数据库导入MATLAB的结果 将ORL数据库导入MATLAB的结果

    Apriori算法matlab代码实现,带数据集和使用说明

    - 如何导入数据集 - 如何调用MATLAB函数执行Apriori算法 - 如何设置参数,如最小支持度和最小置信度 - 如何解释和解读算法结果 压缩包中的数据集可能是一个模拟的交易记录文件,用于演示算法的运行过程。通过这个...

    matlab开发-数据库工具箱

    4. **数据导入导出**:MATLAB可以将数据导入到工作空间,或者将工作空间中的数据导出到数据库。`importdata`和`writeTable`等函数可以帮助完成这些操作。 5. **音频数据处理**:在Matlabadt中,特地针对音频数据...

    Matlab环境下的Oracle数据库访问技术.zip

    在Matlab环境下与Oracle数据库进行交互是数据科学家和工程师经常遇到的任务,这涉及到数据库查询、数据导入导出以及数据处理等多个环节。Oracle数据库是全球广泛使用的数据库管理系统,而Matlab作为强大的数学计算和...

    MATLAB与其他软件的数据交互 MATLAB与excel与数据库交互技术详解

    此外,还能增强对大型数据集的理解能力和深度挖掘能力。 阅读建议:建议边学边练,多尝试书中提供的例子,特别是对于一些复杂的函数调用,应逐步分解实验,以便更好地理解和掌握其实际应用效果。同时,熟悉并练习...

    matlab开发-从SAS导入数据

    在MATLAB中,我们可以通过SAS/ACCESS接口来访问SAS数据集。 1. **SAS/ACCESS**:SAS/ACCESS是一种工具,它提供了一种桥梁,使SAS可以直接与多种外部数据库进行交互。在MATLAB中,我们可以利用SAS/ACCESS的接口,...

    matlab与数据库的连接

    这些函数用于处理游标对象,包括关闭游标、获取数据集的列属性、导入数据到MATLAB单元数组等。游标是数据库中的一个概念,允许程序逐行遍历查询结果集。 10. 数据库元数据访问函数 元数据是指描述数据的数据,通过...

    约翰霍普金斯大学湍流数据库 web servier-matlab-tool包

    约翰霍普金斯大学湍流数据库 Web 服务器-MATLAB 工具包是一个专门为研究湍流现象和数据处理设计的工具集。这个包是研究人员、工程师以及对流体动力学感兴趣的学者的重要资源,它提供了方便的数据访问接口以及一系列...

    SWellEx-96 matlab数据导入脚本

    SWellEx-96 matlab数据导入脚本

    海量数据导入与导出MATLAB

    3. **数据库连接**: 如果数据存储在关系型数据库中,可以利用MATLAB的Database Toolbox通过ODBC连接到数据库,使用SQL语句查询数据后导入MATLAB环境。 4. **XML文件**: 对于半结构化数据,可以采用MATLAB的`xmlread`...

    Matlab数据库工具箱在数学建模中的应用.pdf

    本文深入探讨了Matlab数据库工具箱在数学建模中的应用,通过具体的实例介绍了如何使用Matlab的数据库工具箱导入和分析数据,构建多元线性回归模型。Matlab作为一种高性能的数学软件,在科学计算领域被广泛应用于数据...

    18 matlab导入数据.zip

    在处理大型数据集时,MATLAB还提供了一些高级特性,如数据流处理、内存映射文件等,以提高性能和降低内存占用。此外,使用工作空间中的数据时,可以使用`save`函数将数据保存为MAT文件或`evalc`与`input`结合实现...

    西储大学轴承故障分析matlab代码

    1. 数据预处理:导入和清洗原始信号,去除噪声或不相关的部分。 2. EMD分解:应用EMD算法,将信号分解为多个IMF和残差。 3. IMF分析:对每个IMF进行频谱分析,找出与故障相关的关键频率。 4. 故障特征提取:识别并...

    Matlab与数据库连接.rar

    然后,可以使用`fetch`或`fetchall`函数获取查询结果,并转换为Matlab数据结构。 五、数据导入导出 1. 导入数据:`readtable`和`readmatrix`函数可以从数据库中读取数据到Matlab工作空间。例如: ```matlab data =...

    Matlab读取SQLITE数据库.zip

    通过编译和使用提供的接口,可以方便地将SQLite数据库中的数据导入到Matlab环境中进行进一步的计算和可视化。这不仅简化了数据预处理的步骤,也为跨平台的数据交互提供了可能。在实际项目中,熟练掌握这一技能将极大...

    matlab数理统计数据分析:18 matlab导入数据(含教学视频).zip

    同时,不断实践和应用这些知识到实际数据集上,将是提升技能的最佳途径。通过这个教程,你将能够自信地在MATLAB中进行高效的数据导入和初步分析,为后续复杂的数理统计和数据分析打下坚实基础。

    MATLAB数据分析与挖掘实战课件及配套代码

    在“MATLAB数据分析与挖掘实战课件及配套代码”中,我们可以深入学习如何利用MATLAB进行高效的数据处理和模式发现。这门课程涵盖了从数据预处理到高级分析的全过程,对于想要提升数据科学技能的个人来说是非常宝贵的...

    matlab—数据库的链接.pdf

    10. **数据导入导出**:除了直接执行SQL查询,MATLAB还可以使用`readtable`和`writetable`函数直接导入导出数据到CSV、Excel或数据库表格。 通过以上知识点,我们可以看出MATLAB在处理数据库时的灵活性和强大性。...

    【老生谈算法】用MATLAB实现数据挖掘的一种算法.docx

    在数据预处理中,我们首先对源数据进行整理,为了便于 MATLAB 读取数据,把非数字数据转换为离散型数字数据。然后,我们使用dm=xlsread('lisanhua');’导入 lisanhua’.xls 文件,在 MATLAB 中对一些连续属性值离散...

Global site tag (gtag.js) - Google Analytics