将数组写入CSV,col.names = F的意外行为

Dee*_*ena 4 csv r

我正在尝试将数组写入CSV而不使用行和列名称.将列名设置为false似乎不起作用.我得到"x"作为列名和警告.

任何想法如何删除这个"x"?

write.csv(1:5, row.names = F, col.names = F)

# "x"
# 1
# 2
# 3
# 4
# 5
# Warning message:
#   In write.csv(1:5, row.names = F, col.names = F) :
#   attempt to set 'col.names' ignored
Run Code Online (Sandbox Code Playgroud)

Mif*_*iff 8

?write.csv 除了其他事项之外,还告诉我们write.csv的参数:

append,col.names,sep,dec和qmethod不能改变

绕过这个的方法是使用更通用的版本write.table.

write.table(1:5, row.names = FALSE, col.names = FALSE, sep=',')
# 1
# 2
# 3
# 4
# 5
Run Code Online (Sandbox Code Playgroud)

  • help(write.csv): “write.csv 和 write.csv2 为编写 CSV 文件提供了方便的包装器。[...]这些包装器**故意不灵活**:它们旨在确保使用正确的约定写入有效文件。尝试更改append、col.names、sep、dec 或qmethod 的尝试将被忽略,并发出警告。” (2认同)