将数组导出到Julia中的CSV文件

Hay*_*ayk 7 arrays export-to-csv julia

给定一个(2d)数组A如何用Julia将它导出到csv文件中?

回到旧版本,我会写

writecsv( "FileName.csv",  A);
Run Code Online (Sandbox Code Playgroud)

这会将数组A转储到给定的文件中.但是,这在版本> = 1.0中不起作用.经过一些谷歌搜索,我也尝试使用CSV模块

f = open("test.csv", "a+");
CSV.write(f, A; delim = ',')
Run Code Online (Sandbox Code Playgroud)

但这会引发错误

ERROR: ArgumentError: no default `Tables.rows` implementation for type: Array{Int64,2}
Run Code Online (Sandbox Code Playgroud)

(我的数组A是Int64类型).

有没有人有这个最微不足道的问题的工作解决方案?

Bog*_*ski 10

您需要加载DelimitedFiles模块,现在只writedlm支持功能.

因此,为了将数组写为CSV文件,请使用:

julia> using DelimitedFiles

julia> writedlm( "FileName.csv",  A, ',')
Run Code Online (Sandbox Code Playgroud)

要使用CSV.jl包获得相同的结果,请使用:

julia> using CSV, DataFrames

julia> CSV.write("FileName.csv",  DataFrame(A), writeheader=false)
Run Code Online (Sandbox Code Playgroud)

因为Matrix不支持Tables.jl接口,但是例如DataFrame.