gpt4 book ai didi

matlab - 如何在 matlab/octave 中读取格式化输入?

转载 作者:行者123 更新时间:2023-12-04 05:31:06 26 4
gpt4 key购买 nike

我计划读取 5 列格式化的 .txt 文件,并按以下方式组织:

0 1:0.007477 2:0.000000 3:1.000000 id:10002 #we = GX008-86-4444840 an = 1 asd = 0.086622
0 1:0.603738 2:0.000000 3:1.000000 id:10002 #we = GX037-06-11625428 an = 0.0031586555555558 asd = 0.0897452
0 1:0.214953 2:0.000000 3:0.000000 id:10002 #we = GX044-30-4142998 an = 0.00841930701072746 asd = 0.0999735

我计划将这些文件的内容读入一个矩阵,其中每个元素都将被视为字符串。成功将其读入矩阵后,我计划在 Octave 中使用字符串操作函数来删除不必要的像 id: 等。

但是,我无法正确读取文件。我试过 textscan , fscanf和其他类似的命令等。

例如:
[sam,count]=fscanf(fid,'%d %*s %*s %*s %*s %*s',[5,inf])

返回 sam = [] (0x1) ???count = 0 .我正在尝试阅读有关此的文档,但内容很少。任何帮助将不胜感激。

最佳答案

这是一个使用 textscan 的工作示例。在 Matlab 中它正在工作。我没有用 Octave 测试它。

>> fid = fopen('test.txt')
>> A = textscan(fid,'%f 1:%f 2:%f 3:%f id:%f %*[^\n]')

A =

Columns 1 through 4

[3x1 double] [3x1 double] [3x1 double] [3x1 double]

Column 5

[3x1 double]

>> A{2}

ans =

0.0075
0.6037
0.2150

编辑:将其转换为矩阵:
cell2mat(A)

关于matlab - 如何在 matlab/octave 中读取格式化输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12611810/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com