在西班牙语计算机上将 .csv 文件读入 R 时忽略逗号分隔符

Comma separator ignored when reading in .csv files to R on a Spanish computer

我有一台西班牙语计算机,在法语环境中工作,小数点分隔符通常是逗号。我更习惯使用句点作为小数点分隔符,因此更改了 Microsoft Excel 中的分隔符,并在将文件读入 R 时指定了分隔符,如下所示:

eg <- read.csv("D:/02_COVID-19/Analysis/eglonglat.csv", dec = ".", sep = ",", header = TRUE, stringsAsFactors = FALSE)

但是,逗号分隔符似乎被忽略了,因为 .csv 文件有三列,而当读入 R 时它只有一列。

我在 Windows 7 笔记本电脑上使用全新安装的 R 4.0 和 RStudio 1.3.959。

有什么想法吗?我只是想从使用句点作为小数点分隔符的堆栈溢出 post 中复制一些示例数据 - 不确定是否是 excel 的干预导致了这里的问题(它看起来像小数点分隔符是句点,但也许它们不在背景中?)

这是读入后在 R 中的输出:

> eg
            index.lat.lon
1    1;51.513393;-0.11565
2   2;51.513428;-0.115461
3   3;51.513428;-0.115462
4   4;51.513428;-0.115465
5    5;51.513428;-0.11547
6   6;51.513432;-0.115462
7   7;51.513432;-0.115467
8   8;51.513435;-0.115471
9   9;51.513439;-0.115468
10 10;51.513439;-0.115469

read.csv 中,您需要 sep = ";" 来分隔列,dec = "," 来考虑使用逗号分隔符的小数。

eg <- read.csv("D:/02_COVID-19/Analysis/eglonglat.csv", sep = ";", dec = ",")

这些是 read.csv2

中的默认设置
eg <- read.csv2("D:/02_COVID-19/Analysis/eglonglat.csv")

由于您使用的是 R 4.0.0,因此不需要 stringsAsFactors = FALSE


进一步调试,OP 似乎将 "." 作为小数点分隔符,因此可以正常工作:

eg <- read.csv("D:/02_COVID-19/Analysis/eglonglat.csv", sep = ";")