MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   如何在Matlab中将单元格行中的值转换为向量 (https://www.labfans.com/bbs/showthread.php?t=26679)

poster 2019-12-14 20:46

如何在Matlab中将单元格行中的值转换为向量
 
我想要第3行和第4行的值(= x和y),如下面的数据所示。这是我要转换的Matlab代码:

fid = fopen('experimental_var.dat'); %# read it into one big array, row by row fileContents = textscan(fid,'%s','Delimiter','\n'); fileContents = fileContents{1}; fclose(fid); %# don't forget to close the file again x=fileContents(5); y=fileContents(6); 有人可以帮助提取在下面粘贴的数据文件的第3和第4行中给出的和值。

(0.707107, 0.707107, 0) 0.707107 0.707107 0 1.41421 2.82843 4.24264 5.65685 7.07107 8.48528 9.89949 11.3137 12.7279 14.1421 15.5563 16.9706 18.3848 19.799 21.2132 22.6274 24.0416 25.4558 2.08978 3.09925 4.80142 7.05703 9.66079 12.56 15.5897 18.6189 21.5112 24.1628 26.4319 28.2853 29.7518 30.7296 31.3153 31.5626 31.5141 31.2843 11781 11564 11349 11136 10925 10716 10509 10304 10101 9900 9701 9504 9309 9116 8925 8736 8549 8364

[B]回答:[/B]

除了读取整个文件的内容并进行解析之外,还可以使用[URL="http://www.mathworks.com/help/techdoc/ref/textscan.html"]TEXTSCAN[/URL]从文件中读取所需的值:

fid = fopen('experimental_var.dat','r'); %# Open the file x = textscan(fid,'%f','HeaderLines',4,... %# Ignore 4 header lines 'Delimiter',' ',... %# Add and as delimiters 'MultipleDelimsAsOne',true); %# Combine delimiters into one y = textscan(fid,'%f','Delimiter',' ',... %# Add and as delimiters 'MultipleDelimsAsOne',true); %# Combine delimiters into one fclose(fid); %# Close the file x = x{1}; %# Remove the cell array encapsulation y = y{1}; %# Remove the cell array encapsulation

[url=https://stackoverflow.com/questions/5382168]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 08:35

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.