Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.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
dplyr+;通过'添加复制向量;变异';_R - Fatal编程技术网

dplyr+;通过'添加复制向量;变异';

dplyr+;通过'添加复制向量;变异';,r,R,我想将变量向量添加到数据帧中,在给定的变量组中重复。在dplyr表示法中必须有一种简单的方法来实现这一点(我不希望使用match()语句) 数据: 库(dplyr);图书馆(lubridate) 数据您正试图为数据的每个子集将周向量分配给列perc,这不是您想要做的。您需要的是为每周选择一个weekly\u vector元素,并将此唯一值分配给data中的perc列。一种方法是通过left\u join将数据与包含每周和相应perc值的数据框连接起来 data %>% left_join(

我想将变量向量添加到数据帧中,在给定的变量组中重复。在dplyr表示法中必须有一种简单的方法来实现这一点(我不希望使用match()语句)

数据:

库(dplyr);图书馆(lubridate)

数据您正试图为
数据的每个子集
周向量
分配给列
perc
,这不是您想要做的。您需要的是为每周选择一个
weekly\u vector
元素,并将此唯一值分配给
data
中的
perc
列。一种方法是通过
left\u join
将数据与包含每周和相应
perc
值的数据框连接起来

data %>% left_join(data.frame(week = unique(data$week), perc = weekly_vector))
但这里不一定需要
dplyr
。例如,你可以只做一件事

data$perc <- weekly_vector[factor(data$week, labels ="")]

数据$perc完美。。。dplyr有太多的参数,我想我应该重新阅读文档。快速问题:为什么需要在left_join方法中指定“data.frame”?我刚刚在
left_join
函数中创建了数据框来连接数据。如果愿意的话,您可以在外部执行,并将其存储在单独的变量中
left_join
将两个数据帧作为参数,然后将它们合并。因为我们使用的是管道操作符,所以第一个操作符是
data
data <- data %>% group_by(week) %>% mutate(perc = weekly_vector)
data %>% left_join(data.frame(week = unique(data$week), perc = weekly_vector))
data$perc <- weekly_vector[factor(data$week, labels ="")]