R从表输出中选择名为NA的行
我正在尝试按自定义行顺序打印“表”的内容,如下所示: 摆桌子R从表输出中选择名为NA的行,r,R,我正在尝试按自定义行顺序打印“表”的内容,如下所示: 摆桌子 t <- table(c('a','a','b','b','c',NA),rep(1:2,each=3), useNA='ifany') 但是现在我还想选择(作为最后一行)rowname==NA的行 如果我这样做: t[c('c','a','b','<NA>'),] t[c('c','a','b','')] 或 t[c('c','a','b',NA),] 我明白了 t[c(“c”、“a”、“b”、NA)”中的错
t <- table(c('a','a','b','b','c',NA),rep(1:2,each=3), useNA='ifany')
但是现在我还想选择(作为最后一行)rowname==NA的行
如果我这样做:
t[c('c','a','b','<NA>'),]
t[c('c','a','b','')]
或
t[c('c','a','b',NA),]
我明白了
t[c(“c”、“a”、“b”、NA)”中的错误:下标超出范围
或
t[c(“c”,“a”,“b”,““”),]中出错:下标超出范围
哦,我自己找到了解决办法
t[match(c('c','a','b',NA),rownames(t)),]
当我最后确定我的问题时。也许有人有更好的办法?哦,我自己找到了解决办法
t[match(c('c','a','b',NA),rownames(t)),]
当我最后确定我的问题时。也许有人有更好的技巧?这将使您无需手动指定
NA
行:
narows <- is.na(rownames(t))
t[narows,]
# Test code
> t <- table(c('a','a','b','b','c',NA),rep(1:2,each=3), useNA='ifany')
> t
1 2
a 2 0
b 1 1
c 0 1
<NA> 0 1
> narows <- is.na(rownames(t))
> narows
[1] FALSE FALSE FALSE TRUE
> t[narows,]
1 2
0 1
narows t
1 2
a 20
b 1 1
C01
0 1
>纳罗斯纳罗斯
[1] 假假假真
>t[narows,]
1 2
0 1
这将使您无需手动指定NA
行:
narows <- is.na(rownames(t))
t[narows,]
# Test code
> t <- table(c('a','a','b','b','c',NA),rep(1:2,each=3), useNA='ifany')
> t
1 2
a 2 0
b 1 1
c 0 1
<NA> 0 1
> narows <- is.na(rownames(t))
> narows
[1] FALSE FALSE FALSE TRUE
> t[narows,]
1 2
0 1
narows t
1 2
a 20
b 1 1
C01
0 1
>纳罗斯纳罗斯
[1] 假假假真
>t[narows,]
1 2
0 1