2014-10-10 28 views
0

我有.csv文件,用我的命令读取数:充分利用CSV文件的行/列R中的具有条件

my_data <- read.csv("file_name") 

它有很多栏目,但我想获得数行,withc特定列条件,例如,行,其中列的值“VAL”是更大的数目为20
我已经试过:

k <-subset(my_data, my_data$VAL > 24) 
length(k) 

但是这么想的看起来是正确的。我不知道如何使它工作。

+0

你不需要内部'subset'即'$ my_data VAL'。 'k < - subset(my_data,VAL> 24); nrow(k)' – akrun 2014-10-10 09:20:59

+0

您可以使用'sum(my_data $ VAL> 24)'代替。 – shadow 2014-10-10 09:23:26

回答

0

dim(k)如果你需要保留的数据帧或dim(subset(my_data, my_data$VAL > 24))

0

如果您只对这些观察的数量感兴趣,那么我宁愿简单地总结一个布尔向量。可能R的最大优势是矢量化操作,例如(df$y > 100)会给你一个指示每个观察结果是真还是假的向量。然后,您可以总结这一点,以获得真实的总数。

x <- 1:10000 
y <- rnorm(1000,100,10) 
df <- as.data.frame(cbind(x,y)) #create a dataframe 

count <- sum(df$y > 100)