2013-01-31 38 views
0

下面是摄制代码:访问空字符串()

> example <- c("", "", "a", "b", "c") 
> t <- table(example) 
> t 
example 
    a b c 
2 1 1 1 
> t[""] 
<NA> 
    NA 

我试图访问我的数组是空字符串的数量。

我知道有一些hacky解决方法(如替换原始数组中的空字符串)但我在这里丢失了什么吗?

+0

我不认为空字符串是一个有效的名称:'c(“”= 2)' – hadley

+5

您可以手动进行匹配:'t [match(“”,names(t))]' – hadley

+0

您可以再次使用't [dimnames(t)[[1]] =='']'来间接地做到这一点。 – Justin

回答

0

正如评论说可以接取一个空字符串

d[['']] 
Error in d[[""]] : subscript out of bounds 
> d[['a']] 
[1] 1 

作为一种变通方法,您可以通过多使用自己的名字(d)或您可以将结果强制到data.frame

dat <- data.frame(d) 
> dat[1,] 
    example Freq 
1   2