在R中循环数据帧的最佳方式

在R中循环数据帧的最佳方式,r,dataframe,R,Dataframe,我正在尝试创建一个程序来遍历R数据表。我试图避免for循环,因为据我所知,它们很慢 #创建数据表 请提供所需的结果。Adplyr尝试: library(dplyr) library(hablar) col <- c(0, 1, 0, 1, 0, 1) Priority <- c(1,2,3,4,5,6) #1 highest, 6 lowest IEC_category <- c("a","b","c","d","e","f") df <- data.frame(col

我正在尝试创建一个程序来遍历R数据表。我试图避免
for
循环,因为据我所知,它们很慢

#创建数据表

请提供所需的结果。A
dplyr
尝试:

library(dplyr)
library(hablar)
col <- c(0, 1, 0, 1, 0, 1) 
Priority <- c(1,2,3,4,5,6) #1 highest, 6 lowest
IEC_category <- c("a","b","c","d","e","f")
df <- data.frame(col,Priority, IEC_category)

df %>% 
  mutate(AlarmaPrior = if_else_(col == 1,
                                if_else_(Priority <= lag(Priority), 
                                         IEC_category, 
                                         lag(IEC_category)), NA))
库(dplyr)
图书馆(hablar)

请解释你想做什么。还显示给定示例的预期输出。
  col Priority IEC_category AlarmaPrior
1   0        1            a        <NA>
2   1        2            b           a
3   0        3            c        <NA>
4   1        4            d           c
5   0        5            e        <NA>
6   1        6            f           e