(不推荐)将 ASCII 分隔的数值数据文件读取到矩阵

您所在的位置:网站首页 matlab中矩阵的大小 (不推荐)将 ASCII 分隔的数值数据文件读取到矩阵

(不推荐)将 ASCII 分隔的数值数据文件读取到矩阵

2023-06-12 07:37| 来源: 网络整理| 查看: 265

dlmread

(不推荐)将 ASCII 分隔的数值数据文件读取到矩阵

全页折叠

不推荐使用 dlmread。请改用 readmatrix。有关详细信息,请参阅兼容性注意事项。

语法M = dlmread(filename)M = dlmread(filename,delimiter)M = dlmread(filename,delimiter,R1,C1)M = dlmread(filename,delimiter,[R1 C1 R2 C2])说明

示例

M = dlmread(filename) 将 ASCII 分隔的数值数据文件读取到矩阵 M。dlmread 函数从该文件中检测到分隔符,并将重复的空白视为一个分隔符。

M = dlmread(filename,delimiter) 使用指定的分隔符读取该文件中的数据,并将重复的分隔符视为单独的分隔符。

示例

M = dlmread(filename,delimiter,R1,C1) 从行偏移量 R1 和列偏移量 C1 开始读取。例如,偏移量 R1=0、C1=0 指定文件中的第一个值。

要指定行和列的偏移量而不指定分隔符,请将空字符用作占位符,例如 M = dlmread(filename,'',2,1)。

示例

M = dlmread(filename,delimiter,[R1 C1 R2 C2]) 仅读取行偏移量 R1 和 R2 及列偏移量 C1 和 C2 界定的范围。另一种定义范围的方法是使用电子表格表示法(例如 'A1..B7')而非 [0 0 6 1]。

示例

全部折叠

读取整个带分隔符的文件打开实时脚本

读取示例文件 count.dat。

M = dlmread('count.dat')M = 24×3 11 11 9 7 13 11 14 17 20 11 13 9 43 51 69 38 46 76 61 132 186 75 135 180 38 88 115 28 36 55 ⋮

dlmread 从文件中检测分隔符并返回一个矩阵。

读取包含空的分隔字段的文件打开实时脚本

将两个矩阵写入到文件中,然后使用 dlmread 读取整个文件。

将矩阵导出到名为 myfile.txt 的文件中。然后将另外一个矩阵追加到该文件中第一个矩阵往下偏移一行的位置。

X = magic(3); dlmwrite('myfile.txt',[X*5 X/5],' ') dlmwrite('myfile.txt',X,'-append', ... 'roffset',1,'delimiter',' ')

查看文件内容。

type myfile.txt40 5 30 1.6 0.2 1.2 15 25 35 0.6 1 1.4 20 45 10 0.8 1.8 0.4 8 1 6 3 5 7 4 9 2

使用 dlmread 读取整个文件。

M = dlmread('myfile.txt')M = 6×6 40.0000 5.0000 30.0000 1.6000 0.2000 1.2000 15.0000 25.0000 35.0000 0.6000 1.0000 1.4000 20.0000 45.0000 10.0000 0.8000 1.8000 0.4000 8.0000 1.0000 6.0000 0 0 0 3.0000 5.0000 7.0000 0 0 0 4.0000 9.0000 2.0000 0 0 0

dlmread 导入包含非矩形数据的文件时,它用零填充空文件。

从特定行和列偏移量开始读取带分隔符的文件

创建一个名为 dlmlist.txt 的文件,其中包含列标题和空格分隔值。

test max min direction 10 27.7 12.4 12 11 26.9 13.5 18 12 27.4 16.9 31 13 25.1 12.7 29

读取文件中的数值。指定空格分隔符、行偏移量 1 和列偏移量 0。

filename = 'dlmlist.txt'; M = dlmread(filename,' ',1,0) M = 10.0000 27.7000 12.4000 12.0000 11.0000 26.9000 13.5000 18.0000 12.0000 27.4000 16.9000 31.0000 13.0000 25.1000 12.7000 29.0000读取带分隔符的文件中的特定范围

创建一个名为 dlmlist.txt 的文件,其中包含列标题和空格分隔值。

test max min direction 10 27.7 12.4 12 11 26.9 13.5 18 12 27.4 16.9 31 13 25.1 12.7 29

仅读取文件中最后两行的数值数据。

M = dlmread('dlmlist.txt',' ',[3 0 4 3])M = 12.0000 27.4000 16.9000 31.0000 13.0000 25.1000 12.7000 29.0000输入参数

全部折叠

filename — 文件名 字符向量 | 字符串

文件名,指定为字符向量或字符串。

示例: 'myFile.dat' 或 "myFile.dat"

数据类型: char | string

delimiter — 字段分隔符 字符向量 | 字符串

字段分隔符,指定为字符向量或字符串。使用 '\t' 指定制表符分隔符。

示例: ',' 或 ","

示例: ' ' 或 " "

数据类型: char | string

R1 — 起始行偏移量 0 (默认) | 非负整数

起始行偏移量,指定为非负整数。第一行的偏移量为 0。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

C1 — 起始列偏移量 0 (默认) | 非负整数

起始列偏移量,指定为非负整数。第一列的偏移量为 0。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

R2 — 结束行偏移量 非负整数

结束行偏移量,指定为非负整数。第一行的偏移量为 0。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

C2 — 结束列偏移量 非负整数

结束列偏移量,指定为非负整数。第一列的偏移量为 0。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

提示

通过指定行和列偏移量跳过标题行或列。文件而非标题中的所有值必须是数值。

算法

dlmread 用零填充空的分隔字段。当 dlmread 函数读取其行以非空格分隔符(例如分号)结尾的数据文件时,它返回矩阵 M,该矩阵包含由零组成的额外最后一列。

dlmread 将任何复数作为一个整体导入到复数字段中。此表中显示了复数的有效形式。

形式

示例

±±i|j

5.7-3.1i

±i|j

-7j

复数中的嵌入空白无效,dlmread 将它视为字段分隔符。

版本历史记录在 R2006a 之前推出

全部展开

R2019a: 不推荐使用 dlmread。

不推荐使用 dlmread。请改用 readmatrix。目前没有删除 dlmread 的计划。

从 R2019a 开始,请使用 readmatrix 函数从带分隔符的文本文件中读取矩阵。与 dlmread 函数相比,readmatrix 函数具有以下优势:

更好的跨平台支持和性能

自动检测数据格式和类型

能够使用导入选项来控制数据导入过程,包括错误和缺失数据的处理

下表显示了 dlmread 的典型用法,以及如何更新您的代码以改用 readmatrix。

不推荐

推荐

M = dlmread(filename) M = readmatrix(filename)

另请参阅

readmatrix | dlmwrite | readtable | textscan | uiimport

主题导入文本文件


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3