我有一个数据框,并根据一些因素进行选择。我想要一个从因子级别创建的名称向量。希望这足以表明意图:
test.results <- list(
First = factor(c('A', 'B'), levels=c('A', 'B', 'C')),
Second = factor(c('E', 'F'), levels=c('E', 'F', 'G')),
Third = factor(c('X', 'Y'), levels=c('X', 'Y', 'Z'))
)
# cols <- c('First', 'Third'); TestName(test.results, cols) should return c('A X', 'B Y')
这是一个实现。有没有办法避免显式的“for”循环?
TestName <- function(X, cols) {
result <- character(length(cols))
space <- '';
for (i in cols) {
result <- paste0(result, space, X[[i]]);
space <- ' ';
}
return(result);
}