gpt4 book ai didi

dataframe - 在 Julia 中使用 writetable() 和 DataFrames.jl 时输出不带引号的字符串?

转载 作者:行者123 更新时间:2023-12-04 18:03:13 26 4
gpt4 key购买 nike

使用 writetable 将 DataFrames 中的字符串写入文件的默认设置是它们用引号括起来:

using DataFrames
df = DataFrame(letters=["A","B","C"],numbers=[1,2,3])
writetable("df_file", df, separator='\t')

产生以下文件:
"letters"   "numbers"
"A" 1
"B" 2
"C" 3

有一个选项可以更改引号字符:
writetable("df_file", df, separator='\t', quotemark='.')

.letters. .numbers.
.A. 1
.B. 2
.C. 3

但如果没有指定字符,这将不起作用
writetable("df_file", df, separator='\t', quotemark='')
ERROR: syntax: invalid character literal

我的问题是:我怎样才能写出没有任何引号字符的字符串?这将是我需要的输出:
letters numbers
A 1
B 2
C 3

我目前使用 Julia 版本 0.4.1,DataFrames 包版本 0.6.10。

最佳答案

根据这个GitHub讨论中,DataFrames 包的创建者不相信拥有这种权力的用户可以控制他们的输出。

我个人的建议是直接转换为 Array然后使用 Julia 的 writedlm()这确实相信用户知道他们想写入文件的内容:

writedlm(FileName, convert(Array,df), '\t')

要包含标题,您可以使用以下内容:
open(FileName, "w") do f
writedlm(f, names(df)', '\t')
writedlm(f, convert(Array,df), '\t')
end

另请参阅具有类似答案的相关问题: Is there a way to use strings as separators in writetable() - Julia

关于dataframe - 在 Julia 中使用 writetable() 和 DataFrames.jl 时输出不带引号的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38736893/

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