Подводя итог остальным публикациям, существует три способа изменения порядка столбцов и два способа задания индексации в каждом методе.
С учетом образца фрейма данных
dfr <- data.frame(
dam = 1:5,
piglet = runif(5),
fdate = letters[1:5],
ssire = rnorm(5)
)
Ответ Кохске: Вы можете использовать стандартную матричную индексацию, используя номера столбцов
dfr[, c(2, 4, 1, 3)]
или используя имена столбцов
dfr[, c("piglet", "ssire", "dam", "fdate")]
DWin & Gavin's answer: Фреймы данных позволяют опустить аргумент строкипри указании индекса.
dfr[c(2, 4, 1, 3)]
dfr[c("piglet", "ssire", "dam", "fdate")]
PaulHurleyuk's answer: Вы также можете использовать subset
.
subset(dfr, select = c(2, 4, 1, 3))
subset(dfr, select = c(c("piglet", "ssire", "dam", "fdate")))