改变列错误的使用长度

时间:2018-06-11 18:10:23

标签: r mutate

我是新的R用户。我一直试图计算两个时间点之间的时差,并计算一个百分比值(habitual_efficiency)。使用此百分比值,我需要为新变量(i)分配特定值。

time_difference1 <- as.numeric(difftime(strptime(var$psqi_1_bedtime, "%H:%M"), strptime(var$psqi_3_waketime, "%H:%M")))
timedifference <- abs (24 - time_difference1)
var4 <- data.frame (habitual_efficiency = 1: nrow(var))
transmute (var, habitual_efficiency = (var$psqi_4_sleeptime*100/timedifference))
var4 <- data.frame (comp4score = 1: nrow(var))
var4 <- var4 %>% mutate(comp4score = case_when(var$habitual_efficiency > 84.00 ~ 0, var$habitual_efficiency > 74.00 & var$habitual_efficiency <= 84.00 ~ 1, var$habitual_efficiency > 65.00 & var$habitual_efficiency <= 74.00 ~ 2, var$habitual_efficiency <= 65.00 ~ 3, TRUE ~ NaN
 )
)
var4

当我运行此代码时,我不断收到以下错误:mutate_impl(.data,dots)中的错误:   列habitual_efficiency必须是长度430(行数)或一个,而不是0 mutate_impl(.data,dots)出错:   列i必须是长度430(行数)或一个,而不是0

我将如何解决这个问题?

0 个答案:

没有答案