在R中创建一个逻辑向量并使用哪个函数

时间:2013-02-02 05:40:03

标签: 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

2 个答案:

答案 0 :(得分:17)

所以问题仍然存在:

which(with(hello, type == 1 & area == 3 & Worth == 6))

请记住,您可以将其用作:

which(hello$type1 == 1 & hello$area == 3 & hello$Worth == 6)

也是。但是,当您有更多要检查的陈述时,with会派上用场,因为它可以让您无需每次都输入hello$进行检查。

答案 1 :(得分:6)

虽然答案已被接受,但OP要求创建一个逻辑向量和答案

which(hello$type1 == 1 & hello$area == 3 & hello$Worth == 6)

返回符合这些条件的行。要改为返回逻辑向量,只需使用which的参数,即

hello$type1 == 1 & hello$area == 3 & hello$Worth == 6