![](/img/trans.png)
[英]Reading from CSV file in R and formatting dates and times with strptime()
[英]Reading CSV file in R and formatting dates and time while reading and avoiding missing values marked as?
我正在尝试在 R 中读取 CSV 文件。 如何在阅读时阅读和格式化日期和时间并避免丢失标记为 ? 的值。 我读取后加载的数据应该是干净的。
我尝试了类似data <- read.csv("Data.txt")
它起作用了,但日期和时间保持原样。
另外,如何从特定数据范围中提取数据子集?
为此,我尝试了类似的东西
subdata <- subset(data,
Date== 01/02/2007 & Date==02/02/2007,
select = Date:Sub_metering_3)
我Error in eval(expr, envir, enclos) : object 'Date' not found
收到错误Error in eval(expr, envir, enclos) : object 'Date' not found
日期是第一列。
函数read.csv()
和read.table()
没有设置为对日期等可以有多种格式的东西进行详细的花哨转换。 当这些函数没有自动执行所需的操作时,我发现最好以文本形式读取数据,然后在事后转换变量。
data <- read.csv("Data.txt",colClasses="character",na.strings="?")
data$FixedDate <- as.Date(data$Date,format="%Y/%m/%d")
或任何您的日期格式。 变量FixedDate
将是Date
类型,您可以使用相等和其他条件进行子集。
此外,在您的示例代码中,您将01/02/2007
作为裸代码,这导致 1 除以 2,然后除以 2007 产生 0.0002491281,而不是插入有意义的日期。 考虑as.Date("2007-01-02")
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.