Я хочу связать более двух таблиц вместе с rbind()
в R.
Исходя из моего опыта работы с R-проблемами, я уверен, что решение легко. Но я не понимаю. Пожалуйста, смотрите этот пример данных
# create sample data
set.seed(0)
df <- data.frame(A = 0,
B1 = sample(c(1:3, NA), 10, replace=TRUE),
B2 = sample(c(1:3, NA), 10, replace=TRUE),
B3 = sample(c(1:3, NA), 10, replace=TRUE),
C = 0)
# names of relevant objects
n <- names(df)[startsWith(names(df), 'B')]
Вы видите (в n
), я просто хочу использовать выбор объектов data.frame
.
Нет, я создаю из них таблицы и связываю строки для получения лучшего представления.
t1 <- table(df$B1, useNA="always")
t2 <- table(df$B2, useNA="always")
t3 <- table(df$B3, useNA="always")
# this is a workaround
print( rbind(t1, t2, t3) )
Но я бы хотел упростить этот код, потому что в моих реальных данных гораздо больше таблиц, чем в трех.
Это здесь не работает
# this is what I "want" but doesn't work
print( rbind( table(df[,n])) )
# another try
do.call('rbind', list(table(df[,n])))
Где ошибка в моем мышлении?