Создайте логический вектор в 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