r - 日期格式为“01.01.2009 08:00:00, 01.01.2009 9:00:00, ...”的子集数据
问题描述
我目前正在尝试从我的数据集中对数据进行子集化。我用过dput
,str
所以你可以看到我在用什么:
dput
:
structure(list(Date = structure(1:10, .Label = c("01.01.2009 00:00:00",
"01.01.2009 01:00:00", "01.01.2009 02:00:00", "01.01.2009 03:00:00",
"01.01.2009 04:00:00", "01.01.2009 05:00:00", "01.01.2009 06:00:00",
"01.01.2009 07:00:00", "01.01.2009 08:00:00", "01.01.2009 09:00:00"
), class = "factor"), SWC = c(NaN, NaN, NaN, NaN, NaN, NaN, NaN,
NaN, NaN, NaN)), row.names = c(NA, 10L), class = "data.frame")
str
:
'data.frame': 8756 obs. of 2 variables:
$ Date: Factor w/ 96408 levels "01.01.2009 00:00:00",..: 1 2 3 4 5 6 7 8 9 10 ...
$ SWC : num NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN ...
如您所见,我的日期格式为“DD MM YY HH MM SS”。为了对我的数据进行子集化,我尝试使用该subset()
函数(见下文)。
Mois2009_2 <- subset(Mois1$Date <= "31.12.2009 23:00:00")
但我收到以下错误:
In Ops.factor(Mois1$Date, "31.12.2009 23:00:00") : ‘<=’ not meaningful for factors
我查找了错误,发现我必须使用转换我的日期
as.Date(Mois1$Date)
这产生了另一个错误,它说:
Character string is not in a unique standard format
.
我刚开始使用 R,所以我很感激一些帮助!
解决方案
您可以按以下方式解决它:
Mois1 <- structure(list(Date = structure(1:10, .Label = c("01.01.2009 00:00:00",
"01.01.2009 01:00:00", "01.01.2009 02:00:00", "01.01.2009 03:00:00",
"01.01.2009 04:00:00", "01.01.2009 05:00:00", "01.01.2009 06:00:00",
"01.01.2009 07:00:00", "01.01.2009 08:00:00", "01.01.2009 09:00:00"
), class = "factor"), SWC = c(NaN, NaN, NaN, NaN, NaN, NaN, NaN,
NaN, NaN, NaN)), row.names = c(NA, 10L), class = "data.frame")
Mois1$Date <- as.Date(Mois1$Date, format = "%d.%m.%Y %H:%M:%S")
Mois2009_2 <- subset(Mois1, Date <= "2009-12-31 23:00:00")
推荐阅读
- python - 了解用于二进制分类的 Keras LSTM NN 输入和输出
- plot - gnuplot 设置 y2axis 范围从列
- java - AWS Elastic beanstalk 在部署 http 404 错误后我无法访问我的 JAVA api restfull 应用程序
- html - 在 Shiny App R 中播放 tags$audio 文件直到结束
- javascript - 更改 src 后视频无法加载
- javascript - WebPacker - 通过 ES6 Import vs webpack.ProvidePlugin() 加载 NPM 模块
- profiling - Xcode 10.1 分析着色器这可能需要一段时间(永远???)
- javascript - 角度重置下拉值primeng
- python - 如何构造一个数字之间有空格的整数?
- java - 当抛出具有相同超类的异常时,Eclipse 合并多重抛出