小编Mig*_*lez的帖子

如何在计算值后更改difftime的单位,而不是在执行计算时使用units ="xxx"

我正在减去日期.在以下示例中

bb

FECHA_EFECTO_ESTADO FECHA_ANIVERSARIO_POLIZA
9  2015-11-05 09:49:00               2015-11-05
10 2015-11-05 09:51:00               2015-11-04
Run Code Online (Sandbox Code Playgroud)

列是posixct日期值.要创建一个新变量,这是我可以使用的其他变量的差异:

library (dplyr)
bb<-aa<-mutate(bb, day1=abs(FECHA_EFECTO_ESTADO-FECHA_ANIVERSARIO_POLIZA))
bb
  FECHA_EFECTO_ESTADO FECHA_ANIVERSARIO_POLIZA            day1
1 2015-11-05 09:49:00               2015-11-05  9.816667 hours
2 2015-11-05 09:51:00               2015-11-04 33.850000 hours
Run Code Online (Sandbox Code Playgroud)

默认情况下,day1变量的单位(天,小时,秒)取决于差异的大小.如果我想在几天内有所不同,我可以这样做:

bb<-mutate(bb, day2=abs (difftime(FECHA_EFECTO_ESTADO, FECHA_ANIVERSARIO_POLIZA, units="days" )))
bb
  FECHA_EFECTO_ESTADO FECHA_ANIVERSARIO_POLIZA            day1           day2
1 2015-11-05 09:49:00               2015-11-05  9.816667 hours 0.4090278 days
2 2015-11-05 09:51:00               2015-11-04 33.850000 hours 1.4104167 days
Run Code Online (Sandbox Code Playgroud)

有没有办法在计算指定单位(在这种情况下是天数)?我可能会在分析中进一步发现,我宁愿在数小时内有所不同,所以:
我如何才能更改day1或day2列的单位?
谢谢

r date

12
推荐指数
2
解决办法
1万
查看次数

将数据分区创建为训练,测试和验证-在R中拆分

我想将训练数据分为70%训练,15%测试和15%验证。我正在使用createDataPartition()插入符号包的功能。我将其拆分如下

train <- read.csv("Train.csv")
test <- read.csv("Test.csv")

split=0.70
trainIndex <- createDataPartition(train$age, p=split, list=FALSE)
data_train <- train[ trainIndex,]
data_test <- train[-trainIndex,]
Run Code Online (Sandbox Code Playgroud)

是否有任何方法可以createDataPartition()像以下H2o方法一样分为训练,测试和验证?

data.hex <- h2o.importFile("Train.csv")
splits <- h2o.splitFrame(data.hex, c(0.7,0.15), destination_frames = c("train","valid","test"))
train.hex <- splits[[1]]
valid.hex <- splits[[2]]
test.hex  <- splits[[3]]
Run Code Online (Sandbox Code Playgroud)

r classification machine-learning r-caret

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

r ×2

classification ×1

date ×1

machine-learning ×1

r-caret ×1