我正在寻找从R创建一个csv,其中没有任何值在它们周围引用。当您在Excel中创建CSV而不是在R.
中创建CSV时,这似乎是常态采用以下示例:
set.seed(100)
df <- data.frame(Apples=sample(1:10, 5), Oranges=sample(1:10, 5), Bananas=sample(1:10, 5), Dates=sample(1:10, 5))
write.table(df, sep=",", row.names = FALSE)
如果您在记事本中打开它,您会看到列标题周围有引号。如果要将csv成功导入另一个程序,我需要它没有引号。
我注意到在Excel中重新保存csv会导致引号消失,但我需要避免必须执行此步骤。
我在col.names = noquote(colnames(LineupCSV))
中尝试了write.table
之类的参数,但没有成功。
当我在R中编写csv时,如何删除值周围的引号?
答案 0 :(得分:1)
如果要在不引用值和字符串的情况下将数据帧写为csv文件,则可以在调用quote=FALSE
时设置write.table
参数,或者在write.csv
包装时设置一个write.csv2
参数。和set.seed(100)
df <- data.frame(Apples=sample(1:10, 5),
Oranges=sample(1:10, 5),
Bananas=sample(1:10, 5),
Dates=sample(1:10, 5))
write.table(df, file="~/test.csv", sep=",", row.names = FALSE, quote=FALSE)
。
fwrite
或者,您可以使用data.table
包中的fwrite(df, file="~/test2.csv")
(至少从1.97开始)
for x in data_list:
if x not in encoding:
encoding.append(x)
答案 1 :(得分:1)
在quote
函数中使用write.table()
参数。将其设置为 FALSE
formalArgs(write.table)
# [1] "x" "file" "append" "quote" "sep" "eol" "na" "dec" "row.names" "col.names" "qmethod"
# [12] "fileEncoding"
set.seed(100)
df <- data.frame(Apples=sample(1:10, 5), Oranges=sample(1:10, 5), Bananas=sample(1:10, 5), Dates=sample(1:10, 5))
write.table(df, file="MyFile.csv", sep=",", row.names = FALSE, quote = FALSE)