Дорогое сообщество переполнения стека,Как суммировать столбцы на основе метки столбца (содержащего типичный символ)?
Я новичок на форуме, вот мой первый пост.
Моя проблема это следующим образом:
Я хотел бы подвести, в строке, по столбцам, содержит ли метка столбца типичный характер (в моем случае, либо содержит «полный» или «неполными») и сообщите эти суммы в соответствующих столбцах «sum_complete» и «sum_incomplete».
set.seed(1)
incomplete_x=1:10
incomplete_y=rnorm(10)
complete_x=runif(10)
complete_y=3:12
dt=cbind(incomplete_x,incomplete_y,complete_x,complete_y)
Я хотел бы иметь dt[,5]
и dt[,6]
, содержащие соответственно:
0,3735462 2,1836433 2,1643714 5,5952808 5,3295078 5,1795316 7,4874291 8,7383247 9,5757814 9,6946116
3,934705 4,212143 5,651674 6,125555 7,267221 8,386114 9,013390 10,382388 11,869691 12,340349
Я делаю что-то вроде (извините, не хорошо при кодировании ...):
for (i in 1:ncol(dt)) {
if (grepl("incomplete",colnames(dt)[i])==TRUE) {
dt[,"sum_incomplete"] <- rowSums(dt)
} else {
dt[,"sum_complete"] <- rowSums(dt)
}
}
Но код не работает.
Не могли бы вы помочь с этим кодом, пожалуйста? Заранее благодарю вас за помощь!
Энтони