Не так много "Как ты ...?" но больше "Как ты ...?"
Если у вас есть файл, который кто-то дает вам с 200 столбцами, и вы хотите сократить его до нескольких, необходимых для анализа, как вы поступите с этим? Одно решение предлагает преимущества перед другим?
Предполагается, что у нас есть фрейм данных со столбцами col1, col2 - col200. Если вы хотите только 1-100, а затем 125-135 и 150-200, вы можете:
dat$col101 <- NULL
dat$col102 <- NULL # etc
или
dat <- dat[,c("col1","col2",...)]
или
dat <- dat[,c(1:100,125:135,...)] # shortest probably but I don't like this
или
dat <- dat[,!names(dat) %in% c("dat101","dat102",...)]
Что-то еще, что мне не хватает? Я знаю, что это явно субъективно, но это одна из тех мрачных вещей, в которые вы можете погрузиться и начать делать это одним способом и впасть в привычку, когда есть намного более эффективные пути. Как и этот вопрос о , который .
EDIT:
Или, есть ли простой способ создать работоспособный вектор имен столбцов? name (dat) не печатает их с запятыми между ними, что вам нужно в приведенных выше примерах кода, поэтому, если вы распечатываете имена таким образом, у вас есть пробелы везде и вам нужно вручную ставить запятые ... Есть ли команда, которая даст вам "col1", "col2", "col3", ... в качестве вывода, чтобы вы могли легко получить то, что вы хотите?