当使用read.csv导入csv文件时,我会在不同的计算机上获得不同格式的日期变量

当使用read.csv导入csv文件时,我会在不同的计算机上获得不同格式的日期变量,r,csv,R,Csv,我有不同的计算机,在那里我使用r和一个相同的.csv格式的数据文件。文件源位于压缩文件夹中: 提取后,我将名为Divvy_Trips_2013.csv的文件复制到我的工作目录。此文件有两个时间/日期变量starttime和stoptime 在某些情况下,我会得到以下信息: > data <- read.csv("Divvy_Trips_2013.csv") > str(data$starttime) Factor w/ 176405 levels "10/10/2013 0:0

我有不同的计算机,在那里我使用r和一个相同的.csv格式的数据文件。文件源位于压缩文件夹中:

提取后,我将名为Divvy_Trips_2013.csv的文件复制到我的工作目录。此文件有两个时间/日期变量starttime和stoptime

在某些情况下,我会得到以下信息:

> data <- read.csv("Divvy_Trips_2013.csv")
> str(data$starttime)
Factor w/ 176405 levels "10/10/2013 0:02",..: 80251 80256 80259 80260 80262 80284 80273 80282 80286 80287 
> data[1,1:3]
  trip_id       starttime        stoptime
1    4118 6/27/2013 12:11 6/27/2013 12:16
> data <- read.csv("Divvy_Trips_2013.csv")
> str(data$starttime)
Factor w/ 176405 levels "2013-06-27 01:06",..: 7 12 15 16 18 40 29 38 42 43 ...
> data[1,1:3]
  trip_id        starttime         stoptime
1    4118 2013-06-27 12:11 2013-06-27 12:16    
我想知道是否有任何关于日期格式差异的解释,以及我可能需要做什么来确保统一的格式,所以它看起来总是像第一个例子


我会注意到,我曾尝试在dropbox上托管Divvy_Trips_2013.csv,并使用dropbox公共URL运行了
read.csv
,在所有机器上都运行良好。然而,我很想知道为什么在不同的本地机器上会出现差异。

对我来说,两个示例中读取的日期似乎是相同的。不同之处在于日期的格式。请检查不同计算机上的
Sys.getlocale(“LC\U时间”)
是否不同


我支持@Gary Weissmann的建议,使用
stringAsFactors=FALSE
作为
read.csv
的参数。我认为另一个好的做法是使用
colClasses
参数,并为每列声明预期的数据类型。这样,如果数据不符合您的期望,您将收到一条错误消息。

加载csv文件时,请确保在
read.csv
命令中包含
stringsAsFactors=FALSE
,以便手动控制格式设置。
4118,6/27/2013 12:11,6/27/2013 12:16,480,316,42,Michigan Ave & Oak St,282,Larrabee St & Menomonee St,Customer,,