Короткий ответ : используйте только тот столбец, который хотите выбрать как character
airquality[airquality$Ozone==41, "Temp"]
Длинный ответ :
Если выподмножество data.frame
с использованием индексов ([..., ...]
), у вас есть несколько вариантов.
вы можете использовать числовое подмножество: вы просто указываете номер (а) номеров строк / столбцов в виде целочисленных значений.Например,
airquality[1,3] # extracting the 1st row of the 3rd column
вы можете использовать логическое подмножество (как вы делаете в вашем примере): с помощью логического сравнения вы можете идентифицировать строки / столбцы, которые нужно включить в вывод
airquality[airquality$Ozone==41, colnames(airquality) == "Temp"] # double logical subsetting
вы можете использовать подмножество символов: только для столбцов вы можете указать имя столбца (-ов) как символьный вектор внутри [, ...]
.
airquality[, c("Temp", "somethingElse")]
Вы можете использовать поднаборы «Доллар», если вы хотите указать только столбец onw: Вот два примера, которые приведут к одному и тому же выводу.Единственная разница заключается в том, является ли он первым подмножеством строки или столбца.Обратите внимание, что если вы уже выбрали столбец до поднабора значений в векторе airquality$Temp
(2-й пример), не устанавливает запятую в фигурных скобках, поскольку у вас остался только одномерный вектор.
airquality[airquality$Ozone==41, ]$Temp
airquality$Temp[airquality$Ozone==41] # both do essentially the same
Что не так с
airquality[airquality$Ozone==41, airquality$Temp]
?
В этом случае вы должны логически подгруппировать по строкам, что абсолютно нормально.С другой стороны, подмножество столбцов будет числовым подмножеством столбцов, поскольку airquality$Temp
будет анализировать целочисленный вектор в подмножестве столбцов.Следовательно, вы в конечном итоге будете обращаться к столбцам 67, NA и т. Д., Которые отсутствуют и содержат NA
.Таким образом, R возвращает ошибку "undefined columns selected"
Для дальнейшего ознакомления с поднабором R, взгляните на https://adv -r.hadley.nz / subsetting.html