Создайте логический вектор в R и используйте функцию
У меня есть набор данных с тремя столбцами. Первый столбец - тип, второй столбец - площадь и третий столбец. Я хочу написать логический вектор таким образом, что type = 1, area = 3 и worth = 6. Мне удалось создать кадр данных с помощью подмножества, но я не смог создать логический вектор.
hello <- read.csv("type.csv")
hello1 <- subset(hello, type==1 & area ==3 & worth ==6)
В столбце "Столбец" имеется много значений значений NA.
Набор данных https://www.dropbox.com/s/gjjwmnr8uxmy18y/type.csv
Спасибо.
Jdbaba
Ответы
Ответ 1
Таким образом, вопрос остается ответом:
which(with(hello, type == 1 & area == 3 & Worth == 6))
Помните, вы можете просто использовать его как:
which(hello$type1 == 1 & hello$area == 3 & hello$Worth == 6)
. Однако, когда у вас есть больше операторов для проверки, with
пригодится, поскольку он позволяет вам проверять, не набрав hello$
каждый раз.
Ответ 2
Хотя ответ уже принят, OP попросил создать логический вектор, а ответ
which(hello$type1 == 1 & hello$area == 3 & hello$Worth == 6)
возвращает строки, соответствующие этим условиям. Чтобы вместо этого вернуть логический вектор, просто используйте аргумент which
, т.е.
hello$type1 == 1 & hello$area == 3 & hello$Worth == 6