⑴ 如何用matlab读取txt数据
一楼的回答是一种方式:
把数据放入新建的文本文档data.txt中,放入current folder(当前窗口目录) 目录下;
在Command Window(命令窗口)中输入命令X=load('data.txt');您要的数据就会自动提取到X中。
最简单的一种方式是:
在工作空间窗口有一个import data按钮,即最右边的那个按钮,点击之后,找到你储存数据的txt文件,然后按照提示一步步往下操作即可,但是这种方式只能导入txt格式的数据,一楼的方法也可以导入excel的文件~~~
⑵ matlab怎么读取文本文件中的数据
方法一:
A=importdata(file,space,line)
其中,file是所读取的文件名,space是特定的分隔符,line是一个数字,指文本中字符串文字的行数,如上文的数据中line=4。
此代码的含义是,line行是title,line+1行到end是数据,按特定分隔符space读取数据。此方法可以读取文本在上和数据在下的文件。
A是一个sturct,其中A.data就是所需的数据了。
exapmle:
A=importdata('test.txt','
',4);%运行即可取得数据A.data
此方法也可以按以下操作获取:
在文件菜单中选择
file/import
data,按照提示进行操作至结束。
在
command
窗口中输入
>>
whos
Name
Size
Bytes
Class
data
5x4
160
double
array
textdata
4x1
300
cell
array
Grand
total
is
54
elements
using
460
bytes
>>
data
data
=
1
11
111
1111
2
22
222
2222
3
33
333
3333
4
44
444
4444
5
55
555
5555
>>
textdata
textdata
=
'你好'
'欢迎来到'
'百思论坛'
'www.si.net'
方法二:
[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)
说明:%s可以是其他形式,跟读入的数据类型有关,比如这里也可以用%d,%f等。
这里%s的个数和[a1,a2,a3,a4]对应。
>>
[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)
a1
=
'1'
'2'
'3'
'4'
'5'
a2
=
'11'
'22'
'33'
'44'
'55'
a3
=
'111'
'222'
'333'
'444'
'555'
a4
=
'1111'
'2222'
'3333'
'4444'
'5555'
因以字符串的形式读入,所以有''。
文件内容形式二(假定文件名为test2.txt):
你好
1
11
111
1111
欢迎来到
2
22
222
2222
百思论坛
3
33
333
3333
www.si.net
4
44
444
4444
5
55
555
5555
说明:这种内容格式的文件用上面的方法是不行的。
方法三:
以下是由chinamaker编写的一种方法,但是需要重新建一个文本。
fidin=fopen('test2.txt');
%
打开test2.txt文件
fidout=fopen('mkmatlab.txt','w');
%
创建MKMATLAB.txt文件
while
~feof(fidin)
%
判断是否为文件末尾
tline=fgetl(fidin);
%
从文件读行
if
double(tline(1))>=48&&double(tline(1))<=57
%
判断首字符是否是数值
fprintf(fidout,'%s\n\n',tline);
%
如果是数字行,把此行数据写入文件MKMATLAB.txt
continue
%
如果是非数字继续下一次循环
end
end
fclose(fidout);
MK=importdata('MKMATLAB.txt');
%
将生成的MKMATLAB.txt文件导入工作空间,变量名为MK,实际上它不显示出来
>>
MK
MK
=
1
11
111
1111
2
22
222
2222
3
33
333
3333
4
44
444
4444
5
55
555
5555
⑶ matlab如何读取数据
例如,你的文本文件名为'x.txt',那么就很简单了,使用load x.txt就可以了,matlab会自动使用文件名作为变量。
如果你使用其它的文件名,例如'1.txt',matlab会将内容赋给变量X1,那么你转换一下就可以了,令x=X1。
--------------------------------------------------
a=load('x.txt');
x=a(:,1);
b=load('y.txt');
y=b(:,1);
改成(数据横着放,以空格分开数据)
x=a;
y=b;
⑷ matlab中如何存储和提取数据
存储和提取数据的指令分别是save及load,而save的数据型态又分为:(1)双位元格式 (binary format) 的 MAT-file,(2) ASCII 格式的 ASCII-file。MAT-file 是以双位元字符储存,可让电脑在读出/入(input/output) 速率加 快,其格式为testmat(tesmatlab中如何存储和提取数据?
⑸ matlab怎么提取数组中的数据
1、打开matlab,在命令行窗口中输入a=[1 2 3 4;4 5 6 7;1 2 3 4],按回车键创建一个3行4列的矩阵。
⑹ 如何在matlab中读取TXT数据文件
我这里有一个读取的实例你可以看一下
%%
格式化文本的读操作
%只读形式打开txt文件
file_t
=
fopen('mytxt.txt','r');
%以十进制读取,且读取的数据自动排成一列,排的顺序为:先从第一行左边到第一行右边,然后排第二行
A
=
fscanf(file_t,'%d');
%关闭文件
fclose(file_t);
%%
使用textscan读取多列数据
file_t
=
fopen('mytxt.txt','r');
%将原来的两列数据以数组原包(cell)的形式读取,cell共有两个元素
A
=
textscan(file_t,'%d
%d');
%C和上面A一样,D返回位置信息
[C,D]
=
textscan(file_t,'%d
%d');
fclose(file_t);
A{1}
%原包数据的第一个元素对应第一列
A{2}
C
D
%%
textread函数读取,现在不常用
%这种形式将每一列分别给A,B
[A,B]
=
textread('mytxt.txt','%d
%d');
A
B
%这种形式将txt文件排成一列赋给C
C
=
textread('mytxt.txt','%d');
C
%%
忽略标题
file_t
=
fopen('headline.txt','r');
%忽略掉第一行的标题信息
A
=
textscan(file_t,'%d
%d','HeaderLines',1);
A
%%
使用textscan扫描字符串中的数据
clc
str_1
=
'The
number
is
1
2
3
4
5';
%首先使用textscan获取第一个前14个字符
[str1,position1]
=
textscan(str_1,'%14c',1);
str1{:};
%The
number
is
position1;
%14
%获取字符串的长度
[temp1,temp2]
=
size(str_1);
%然后读取后面的数字字符串
str_2
=
textscan(str_1(position1+1:temp2),'%9c',1);
%将字符串转化为数值
num
=
str2num(str_2{1})
%%
格式化文本的写操作
%使用fprintf向文件中写入数据
%写形式打开文件,存在就打开,不存在新创建一个文件开始写
file_1
=
fopen('text_w.txt','w');
%以数字形式写入数据
fprintf(file_1,'%d',1225);
%关闭文件,返回0表示关闭成功
fclose(file_1);
%%
每写入一次换行或插入想要的字符
file_1
=
fopen('text_w.txt','w');
%\r回车符
\n换行符
这里必须回车换行连用
fprintf(file_1,'%d\r\n',[32;34]);
%每写入一个数字,后加一个空格,多列按列输出
temp
=
randint(4,2);
fprintf(file_1,'%d
',temp);
fclose(file_1);
%%
fprintf在命令空间输出
str_1
=
'Hello!
World!';
%这里fid
=
1;这时输出换行只需\n就行,%c为输出单个字符,%s为输出字符串
fprintf(1,'%c\n',str_1);
%%
扫描字符串2
clear
clc
str
=
'1985
112
-10.53';
%将
替换为0
A
=
find(str
==
32);
str(A)
=
48;
%下面这这一句相当于+198501120-10.53
%不是你给的+19850112-010.53
str2num(str)
⑺ 在matlab 中怎样读取矩阵中的数据
在matlab中怎样读取矩阵中的数据的方法。
如下参考:
1.打开原始的图图形文件,在matlab命令窗口中输入以下指令:图”)。
⑻ matlab怎样读取网口数据
matlab里面有一个函数叫tcpip(),你用的上 Demo里面有一个Reading and Writing Binary Data,演示了整个读写tcpip数据包的过程。
⑼ matlab中如何提取部分数据
1、存储和提取数据的指令分别是save及load,而save的数据型态又分为:(1)双位元格式 (binary format) 的 MAT-file,(2) ASCII 格式的 ASCII-file。MAT-file 是以双位元字符储存,可让电脑在读出/入(input/output) 速率加 快,其格式为test.mat(test为档名),MATLAB将档案的型态预设为MAT-file;而ASCII-file则是以可辨识的字符 储存,但会降低电脑在读出/入的速率,其格式为test.dat(test为档名)。如果你的数据是只在MATLAB中产生 及被使用,那最好使用MAT-file。ASCII-file则必须用在当数据档要为其它不是MATLAB的应用软体读取时。
2、MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。