如何使用 r 函数 wtable 在加权 table 中显示零?
How to show zeros in weighted table with r function wtable?
我很欣赏 GDAtools 包中的函数 wtable,例如
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='freq')
3 4 5 Sum
4 20,0 156,9 33,6 210,5
6 39,7 70,7 15,5 125,8
8 205,7 29,1
Sum 265,4 78,2
但是对于 cyl==8 & gear==4 组合,这显示空白而不是零。
因此我不能使用道具选项:
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='prop')
3 4 5 Sum
4
6
8
Sum
也不与 prop.table:
prop.table(GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec))
3 4 5 Sum
4
6
8
Sum
只有 and/or 行的 rprop 和 cprob 没有空格才有效:
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='rprop')
3 4 5 Sum
4 9,5 74,5 16,0 100
6 31,5 56,2 12,3 100
8 NA NA NA NA
Sum NA NA NA NA
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='cprop')
3 4 5 Sum
4 7,5 NA 43,0 NA
6 14,9 NA 19,8 NA
8 77,5 NA 37,2 NA
Sum 100,0 NA 100,0 NA
有没有办法在 wtable 中强制为零而不是空白?
空白值实际上是 NA
显示不同的值。您可以使用 is.na
.
捕获它们
tab <- GDAtools::wtable(mtcars$cyl,mtcars$gear, weights=mtcars$qsec, stat='freq')
tab[is.na(tab)] <- 0
tab
# 3 4 5 Sum
#4 20.0 156.9 33.6 210.5
#6 39.7 70.7 15.5 125.8
#8 205.7 0.0 29.1 0.0
#Sum 265.4 0.0 78.2 0.0
我很欣赏 GDAtools 包中的函数 wtable,例如
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='freq')
3 4 5 Sum
4 20,0 156,9 33,6 210,5
6 39,7 70,7 15,5 125,8
8 205,7 29,1
Sum 265,4 78,2
但是对于 cyl==8 & gear==4 组合,这显示空白而不是零。 因此我不能使用道具选项:
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='prop')
3 4 5 Sum
4
6
8
Sum
也不与 prop.table:
prop.table(GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec))
3 4 5 Sum
4
6
8
Sum
只有 and/or 行的 rprop 和 cprob 没有空格才有效:
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='rprop')
3 4 5 Sum
4 9,5 74,5 16,0 100
6 31,5 56,2 12,3 100
8 NA NA NA NA
Sum NA NA NA NA
GDAtools::wtable(mtcars$cyl,mtcars$gear,weights = mtcars$qsec, stat='cprop')
3 4 5 Sum
4 7,5 NA 43,0 NA
6 14,9 NA 19,8 NA
8 77,5 NA 37,2 NA
Sum 100,0 NA 100,0 NA
有没有办法在 wtable 中强制为零而不是空白?
空白值实际上是 NA
显示不同的值。您可以使用 is.na
.
tab <- GDAtools::wtable(mtcars$cyl,mtcars$gear, weights=mtcars$qsec, stat='freq')
tab[is.na(tab)] <- 0
tab
# 3 4 5 Sum
#4 20.0 156.9 33.6 210.5
#6 39.7 70.7 15.5 125.8
#8 205.7 0.0 29.1 0.0
#Sum 265.4 0.0 78.2 0.0