Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R从表输出中选择名为NA的行_R - Fatal编程技术网

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