使用writetable将DataFrame中的字符串写入文件的默认设置是它们被引号括起来:
using DataFrames
df = DataFrame(letters=["A","B","C"],numbers=[1,2,3])
writetable("df_file", df, separator='\t')
Run Code Online (Sandbox Code Playgroud)
生成以下文件:
"letters" "numbers"
"A" 1
"B" 2
"C" 3
Run Code Online (Sandbox Code Playgroud)
可以选择更改引号字符:
writetable("df_file", df, separator='\t', quotemark='.')
.letters. .numbers.
.A. 1
.B. 2
.C. 3
Run Code Online (Sandbox Code Playgroud)
但如果没有指定字符,这不起作用
writetable("df_file", df, separator='\t', quotemark='')
ERROR: syntax: invalid character literal
Run Code Online (Sandbox Code Playgroud)
我的问题是:如何编写没有任何引号字符的字符串?这将是我需要的输出:
letters numbers
A 1
B 2
C 3
Run Code Online (Sandbox Code Playgroud)
我目前正在使用Julia版本0.4.1,DataFrames软件包版本0.6.10.
根据GitHub 的讨论,DataFrames 包的创建者不信任具有这种控制其输出的权力的用户。
我个人的建议是转换为Array
然后使用 Julia 的writedlm()
,它相信用户知道他们想要写入文件的内容:
writedlm(FileName, convert(Array,df), '\t')
Run Code Online (Sandbox Code Playgroud)
要包含标题,您可以使用如下内容:
open(FileName, "w") do f
writedlm(f, names(df)', '\t')
writedlm(f, convert(Array,df), '\t')
end
Run Code Online (Sandbox Code Playgroud)
另请参阅具有类似答案的相关问题:Is there a way to use strings as seperators in writetable() - Julia
归档时间: |
|
查看次数: |
428 次 |
最近记录: |