Повторять элементы в столбце, учитывая другое значение в кадре данных

-4

Я хотел бы повторять элементы в одном столбце в соответствии со значениями в другом столбце. Например

col1 <- c("A","B","A","C","B")
col2 <- c(2,3,1,3,4)
data <- data.frame(col1,col2)

Давать

col1<-c("A","A","B","B","B","A","C","C","C","B","B","B","B")
col2<-c(2,2,3,3,3,1,3,3,3,4,4,4,4)
data <- data.frame(col1,col2)

Я попробовал команду rep(), но он только повторяет col1 на основе первой строки col2 ("В rep (c (col1), each = col2): первый элемент, используемый для" каждого "аргумента")

dat_new<-data.frame(rep(c(col1),each=col2))

благодаря

спросил(а) 2021-01-19T16:24:39+03:00 2 месяца, 3 недели назад
1
Решение
62

Мы можем реплицировать последовательность строк, чтобы развернуть набор данных.

 data[rep(1:nrow(data), data$col2),]

ответил(а) 2021-01-19T16:24:39+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема