当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia DelimitedFiles.readdlm方法用法及代码示例


用法一

readdlm(source, delim::AbstractChar, T::Type, eol::AbstractChar; header=false, skipstart=0, skipblanks=true, use_mmap, quotes=true, dims, comments=false, comment_char='#')

从源中读取矩阵,其中每一行(由 eol 分隔)给出一行,元素由给定的分隔符分隔。源可以是文本文件、流或字节数组。可以通过将映射段的字节数组表示作为源来使用内存映射文件。

如果T 是数字类型,则结果是该类型的数组,任何非数字元素都为浮点类型的NaN,或为零。 T 的其他有用值包括 StringAbstractStringAny

如果 headertrue ,则第一行数据将作为标题读取,并返回元组 (data_cells, header_cells) 而不仅仅是 data_cells

指定skipstart 将忽略输入中相应数量的初始行。

如果 skipblankstrue ,则输入中的空白行将被忽略。

如果 use_mmaptrue ,则 source 指定的文件是内存映射的,如果文件很大,则可能会加快速度。默认值为 false'. On a Windows filesystem, use_mmap should not be set to true`,除非文件只被读取一次并且也不会被写入。存在一些边情况,其中操作系统为Unix-like,但文件系统为Windows-like。

如果 quotestrue ,则包含在 double-quote (") 字符中的列允许包含新行和列分隔符。引用字段中的 Double-quote 字符必须使用另一个 double-quote 进行转义。指定 dims作为预期行和列的元组(包括标题,如果有的话)可能会加快读取大文件。如果 commentstrue ,则任何行中以 comment_char 开头的行和 comment_char 之后的文本都将被忽略.

例子

julia> using DelimitedFiles

julia> x = [1; 2; 3; 4];

julia> y = [5; 6; 7; 8];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x y])
       end

julia> readdlm("delim_file.txt", '\t', Int, '\n')
4×2 Matrix{Int64}:
 1  5
 2  6
 3  7
 4  8

julia> rm("delim_file.txt")

用法二

readdlm(source, delim::AbstractChar, T::Type; options...)

行尾分隔符被视为 \n

例子

julia> using DelimitedFiles

julia> x = [1; 2; 3; 4];

julia> y = [1.1; 2.2; 3.3; 4.4];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x y], ',')
       end;

julia> readdlm("delim_file.txt", ',', Float64)
4×2 Matrix{Float64}:
 1.0  1.1
 2.0  2.2
 3.0  3.3
 4.0  4.4

julia> rm("delim_file.txt")

用法三

readdlm(source, delim::AbstractChar; options...)

行尾分隔符被视为 \n 。如果所有数据都是数字,则结果将是一个数字数组。如果某些元素无法解析为数字,则返回一个由数字和字符串组成的异构数组。

例子

julia> using DelimitedFiles

julia> x = [1; 2; 3; 4];

julia> y = [1.1; 2.2; 3.3; 4.4];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x y], ',')
       end;

julia> readdlm("delim_file.txt", ',')
4×2 Matrix{Float64}:
 1.0  1.1
 2.0  2.2
 3.0  3.3
 4.0  4.4

julia> z = ["a"; "b"; "c"; "d"];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x z], ',')
       end;

julia> readdlm("delim_file.txt", ',')
4×2 Matrix{Any}:
 1  "a"
 2  "b"
 3  "c"
 4  "d"

julia> rm("delim_file.txt")

用法四

readdlm(source, T::Type; options...)

假定列由一个或多个空格分隔。行尾分隔符被视为 \n

例子

julia> using DelimitedFiles

julia> x = [1; 2; 3; 4];

julia> y = [5; 6; 7; 8];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x y])
       end;

julia> readdlm("delim_file.txt", Int64)
4×2 Matrix{Int64}:
 1  5
 2  6
 3  7
 4  8

julia> readdlm("delim_file.txt", Float64)
4×2 Matrix{Float64}:
 1.0  5.0
 2.0  6.0
 3.0  7.0
 4.0  8.0

julia> rm("delim_file.txt")

用法五

readdlm(source; options...)

假定列由一个或多个空格分隔。行尾分隔符被视为 \n 。如果所有数据都是数字,则结果将是一个数字数组。如果某些元素无法解析为数字,则返回一个由数字和字符串组成的异构数组。

例子

julia> using DelimitedFiles

julia> x = [1; 2; 3; 4];

julia> y = ["a"; "b"; "c"; "d"];

julia> open("delim_file.txt", "w") do io
           writedlm(io, [x y])
       end;

julia> readdlm("delim_file.txt")
4×2 Matrix{Any}:
 1  "a"
 2  "b"
 3  "c"
 4  "d"

julia> rm("delim_file.txt")

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 DelimitedFiles.readdlm — Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。