Замените имя столбца другим именем элемента столбца и удаляйте столбцы каждые 6 столбцов в цикле - PullRequest
0 голосов
/ 16 мая 2019

У меня есть следующие данные: в R я хочу заменить совпадения имен столбцов на «реклама»
, которая является элементом ключевого слова столбца. Я хочу сделать этот процесс в повторении для 100 столбцов.Как только этот процесс завершен.Я хочу удалить каждые шесть столбцов (после попаданий) для 100 столбцов.

Вот воспроизводимый код для образца данных, приведенного ниже;

hits<- c(89, 93, 97, 86, 82, 83, 84, 76, 87, 87) geo <- c("ca","ca","ca","ca","ca","ca","ca","ca","ca","ca") time<- c("all","all","all","all","all","all","all","all","all","all") 
keyword<- c("adver","adver","adver","adver","adver","adver","adver","adver","adver","adver"
) 
group<- c("web","web","web","web","web","web","web","web","web","web") 
category<- c(12,12,12,12,12,12,12,12,12,12) subject1 <- list(hits = hits,geo = geo,time = time, keyword = keyword, group = group) pt_data <- data.frame(subject1, hits, geo,time, keyword, group, category, stringsAsFactors = FALSE)

Я хочу, если мы изменимимя столбца "соответствует" объявлению, которое является элементом в столбце "ключевое слово", этот процесс должен повторяться для 100 столбцов или около того.затем удалите столбцы, географическое положение, время, ключевое слово и группу с повторением для 100 столбцов или около того.Обратите внимание, что совпадения, гео, время, ключевое слово, группа, категория повторяются снова, начиная с обращений, ... …… ..

data sample is attached here

1 Ответ

0 голосов
/ 16 мая 2019

joshpk прав, что ваши вопросы должны включать воспроизводимый пример кода, чтобы мы могли точно определить вашу проблему.Тем не менее, я думаю, что это то, что вы ищете?

#creating example dataset
x <- data.frame(matrix(ncol=100, nrow=1))
x[1,] <- 1:100
colnames(x) <- paste0("r",1:100)

#colnames part
colnames(x)[seq(4,100,6)] <- x[1,seq(4,100,6)]

#deleting columns part
y <- x[,-(seq(5,100,6))]

#result
y[1,1:6]

r1 r2 r3 4 r6 r7
1  2  3 4  6  7
...