试图设置;九月&引用;十二月";忽略:write.csv格式错误-R

试图设置;九月&引用;十二月";忽略:write.csv格式错误-R,r,csv,R,Csv,也有类似的帖子,但没有一篇真正解释这个错误是由什么引起的 我想获得以下.csv格式的输入:分隔符“;”和小数“ 我得到的是: 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:

也有类似的帖子,但没有一篇真正解释这个错误是由什么引起的

我想获得以下.csv格式的输入:分隔符“;”和小数“

我得到的是:

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使用逗号作为小数点,分号作为分号 分隔符,在某些西欧国家,用于CSV文件的Excel约定 地区

如果它们不适合您,您最好使用
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

xy使用
write.table
替代?我认为您应该包括有关
write.csv
如何设计为忽略某些参数的相关详细信息……是的,这确实有效。谢谢你@Roman Luštrik。但是为什么不写.csv呢?导致错误的原因是什么?@Danka,因为您要修改的参数不打算在
write.csv2
write.csv
中修改。你得到的警告非常明确:“Versuch ignoriert‘dec’zu setzen”。只需使用
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