Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
温度值范围的基准R ifelse测试_R_If Statement_Time Series - Fatal编程技术网

温度值范围的基准R ifelse测试

温度值范围的基准R ifelse测试,r,if-statement,time-series,R,If Statement,Time Series,我知道这个问题以前也有人问过其他案例,但没有一个答案与我的案例相符。我一直在努力,但没有让它为我的代码工作。我相信有一个简单的解决方案,并感谢您的帮助 我的数据如下所示: start <- as.POSIXct("2018-05-18 00:00") tseq <- seq(from = start, length.out = 1440, by = "10 mins") Measurings <- data.frame( Time = tseq, Temp = samp

我知道这个问题以前也有人问过其他案例,但没有一个答案与我的案例相符。我一直在努力,但没有让它为我的代码工作。我相信有一个简单的解决方案,并感谢您的帮助

我的数据如下所示:

start <- as.POSIXct("2018-05-18 00:00")
tseq <- seq(from = start, length.out = 1440, by = "10 mins")
Measurings <- data.frame(
  Time = tseq,
  Temp = sample(10:37,1440, replace = TRUE, set.seed(seed = 10)),
  Variable1 = sample(1:200,1440, replace = TRUE, set.seed(seed = 187)),
  Variable2 = sample(300:800,1440, replace = TRUE, set.seed(seed = 333))
)

Measurings$heat25 <- ifelse(Measurings$Temp >= 25 ,"summer", "normal")
Measurings$heat30 <- ifelse(Measurings$Temp > 30 ,"heat", "normal")

start您需要稍微修改代码

Measurings$summer <- ifelse(Measurings$Temp >= 25 & Measurings$Temp < 30, "summer", "rest"))
测量值$summer=25和测量值$Temp<30,“夏季”、“休息”))
对于矢量化操作,您只需使用一个
&
运算符

请参见
帮助('&&')
,了解逻辑函数在R中如何工作的说明。
帮助('&&')
:“&和&&表示逻辑and,|和| |表示逻辑OR。较短的形式执行元素级比较的方式与算术运算符的方式大致相同。较长的表单从左到右求值,只检查每个向量的第一个元素。"
Measurings$summer <- ifelse(Measurings$Temp >= 25 & Measurings$Temp < 30, "summer", "rest"))