有类似的帖子,但实际上没有一个是由这个错误引起的?
我想以这种.csv格式获取输入:separator";" 和十进制"."
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
Run Code Online (Sandbox Code Playgroud)
我得到的是:
Parameter;Intensitaet;Wert
se;2;0,0572
se;2;0,2
se;2;0,1
se;2;0,4
se;2;0,0795
Run Code Online (Sandbox Code Playgroud)
已尝试此代码的各种版本:
> 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
Run Code Online (Sandbox Code Playgroud)
但是我总是得到同样的错误.我该怎么办呢?
提前致谢!
Rom*_*rik 16
十进制和分隔符是硬编码的write.csv2.
write.csv2使用小数点的逗号和分隔符的分号,一些西欧语言环境中的CSV文件的Excel约定.
如果他们不适合你,你最好使用write.table.write.table是基本的方法,write.csv并且亲属只是一个方便的包装.
使用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
Run Code Online (Sandbox Code Playgroud)