有类似的帖子,但没有一个真正解释这个错误是由什么引起的?
我想获取此 .csv 格式的输入:分隔符“;”和十进制“.”
Parameter;Intensitaet;Wert
se;1;0.027
se;1;0.024
se;1;0.021
se;1;0.018
se;1;0.015
se;1;0.012
我得到的是:
Parameter;Intensitaet;Wert
se;2;0,0572
se;2;0,2
se;2;0,1
se;2;0,4
se;2;0,0795
已经尝试过此代码的各种版本:
> write.csv(final, "SEmurgang.csv", row.names = F, quote = F, sep = ";")
Warning message:
In write.csv(final, "SEmurgang.csv", row.names = F, quote = F, sep = ";") :
Versuch ignoriert 'sep' zu setzen
> write.csv2(final, "SEmurgang.csv", row.names = F, quote = F, dec=".")
Warning message:
In write.csv2(final, "SEmurgang.csv", row.names = F, quote = F, :
Versuch ignoriert 'dec' zu setzen
但是,我总是遇到同样的错误。我该如何修复它?
最佳答案
小数点和分隔符硬编码在 write.csv2
中。
write.csv2 uses a comma for the decimal point and a semicolon for the separator, the Excel convention for CSV files in some Western European locales.
如果它们不适合您,您最好使用write.table
。
write.table
是基本方法,write.csv
和 kin 只是一个方便的包装器。
使用write.table
对我有用。
xy <- data.frame(Parameter = rep("se", 5),
Intensitaet = rep(1, 5),
Wert = rnorm(5))
xy
Parameter Intensitaet Wert
1 se 1 -1.014570811
2 se 1 -0.680449323
3 se 1 -0.223736133
4 se 1 0.004270224
5 se 1 0.607427274
write.table(xy, file = "test.txt", row.names = FALSE, dec = ".", sep = ";",
quote = FALSE)
system("cat test.txt")
Parameter;Intensitaet;Wert
se;1;-1.01457081089331
se;1;-0.68044932280397
se;1;-0.223736133320336
se;1;0.0042702235293986
se;1;0.607427274081342
关于r - 尝试设置 "sep"/"dec"忽略 : Error in write. csv 格式 - R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42946430/