matlab中怎样将数据导入导出?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中怎样将数据导入导出?相关的知识,希望对你有一定的参考价值。

参考技术A 你可以直接在m文件里面用xlswrite函数:(filename/sheet/range都是要加单引号滴)\\x0d\\x0axlswrite(filename, M);将矩阵M的数据写入名为filename的Excel文件中。\\x0d\\x0axlswrite(filename, M, sheet);将矩阵M的数据写入文件名为filename中的指定的sheet中。\\x0d\\x0axlswrite(filename, M, range);将矩阵M中的数据写入文件名为filename的Excel文件中,且由range制定存储的区域,例如\'C1:C2\'.\\x0d\\x0axlswrite(filename, M, sheet, range) ;在上一条命令的基础上指定了所要存储的sheet。\\x0d\\x0astatus = xlswrite(filename, ...) ;返回完成状态值。如果写入成功,则status为1;反之写入失败,则status为0.\\x0d\\x0a[status, message] = xlswrite(filename, ...);返回由于写入操作而产生的任何错误或警告信息\\x0d\\x0a\\x0d\\x0a应用举例\\x0d\\x0a例一:将数据写入默认的工作表中 \\x0d\\x0a将一七元素向量写入testdata.xls中。默认格式下,数据将写入文件中第一个工作表的A1至G1单元格。 xlswrite(\'testdata.xls\', [12.7 5.02 -98 63.9 0 -.2 56])\\x0d\\x0a\\x0d\\x0a例二:将混合数据写入制定工作表中\\x0d\\x0ad = \'Time\', \'Temp\'; 12 98; 13 99; 14 97;\\x0d\\x0as = xlswrite(\'tempdata.xls\', d, \'Temperatures\', \'E1\')\\x0d\\x0as =\\x0d\\x0a1\\x0d\\x0a\\x0d\\x0aTime Temp\\x0d\\x0a12 98\\x0d\\x0a13 99\\x0d\\x0a14 97\\x0d\\x0a\\x0d\\x0a例三:向文件中添加新的工作表\\x0d\\x0a现将上例中的数据写入tempdata.xls中并不存在的一个工作表中,在这种情况下,xlswrite会添加一个新的工作表,名称由用户指定,此时xlswrite会显示警告提示添加了新的工作表。xlswrite(\'tempdata.xls\', d, \'NewTemp\', \'E1\')\\x0d\\x0aWarning: Added specified worksheet. \\x0d\\x0a如果不想看到这些警告,可以输入下列命令。 \\x0d\\x0awarning off MATLAB:xlswrite:AddSheet\\x0d\\x0a再一次输入写入命令,这次创建另外一个新的工作表NewTemp2,此时不再显示提示信息,但仍可以用msg命令提取该信息。\\x0d\\x0a[stat msg] = xlswrite(\'tempdata.xls\', d, \'NewTemp2\', \'E1\');\\x0d\\x0amsg\\x0d\\x0amsg =\\x0d\\x0amessage: \'Added specified worksheet.\'\\x0d\\x0aidentifier: \'MATLAB:xlswrite:AddSheetbook.

matlab 中.csv数据导入及作图问题

现在有一组温度盐度随深度变化的数据,每一个深度对应一个温盐数据,是.csv格式,如果我想以盐度列作为x轴数据,以温度列作为Y轴数据,看看这些点在温盐图上的分布情况,应该怎么做。尤其是如何将温度盐度数据导入。
PS:我根据matlab help的说明 写了如下几句
A=csvread(‘数据文件名’,44,3,[44,3,80,4])
x=A(:,4)
y=A(:,3)
plot(x,y)
做出的图很奇葩,这样编写问题在哪里。应该怎样编写
另外 我用UltraEdit打开的.csv的数据 ,行的标号很清楚 ,但是如何看我选的某个数据的列数,只能自己数吗?下面附一张UE中的数据部分截图

望大神帮忙 !

虽然问题很久了而且题主已经搞定问题,但还是想把正确解法写出来,方便后人。题主的错误在于把x,y的列数取值弄错了,x、y的列数应该为数组A中所需数据所在的列数。
A=csvread('filename',44,3); //读取第44行以下、第3列以右的数据
x=A(: , 2); //在读取的数组A中,令所有第2列的数据赋予x
y=A(: , 1); //在读取的数组A中,令所有第1列的数据赋予y
plot(x , y);
参考技术A 看看工作空间,你的x,y取到的数对不对本回答被提问者采纳

以上是关于matlab中怎样将数据导入导出?的主要内容,如果未能解决你的问题,请参考以下文章

怎样将matlab中所有数据导出

怎样将matlab中的数据导出

matlab 中.csv数据导入及作图问题

MATLAB中文件的读写和数据的导入导出

怎样将MySQL数据库结构和数据导出或导入

怎样在Oracle数据库中高速导出/导入