#r #data.table
#r #data.table
Вопрос:
В моем проекте
dftask2[, 56 ]
dftask2[, cols[1] ]
коды возвращают разные значения, в то время как cols[1] = 56 на самом деле. Первая строка возвращает весь столбец, а вторая возвращает значение 56. В чем причина этого? Можем ли мы использовать переменную в качестве держателя разных индексов?
Комментарии:
1. Вы можете использовать
dftask2[, cols[1], with = FALSE]
Ответ №1:
Если вы действительно хотите «использовать переменную в качестве держателя разных индексов», тогда у вас есть (как минимум) два варианта
with
Аргумент Specity какFALSE
:
dftask2[, cols[1], with = F]
- попробуйте с
get
:
dftask2[, get('cols')[1]]
Ответ №2:
Мы также можем использовать .SDcols
dftask2[, .SD, .SDcols = cols[1]]
Комментарии:
1. Почему здесь используется «.SD»?
2. @EmreKara Это подмножество Data.table