count()中的wt是什么意思(R语言)?

yvfmudvl  于 2023-04-27  发布在  R语言
关注(0)|答案(3)|浏览(523)

我已经谷歌来回,但我似乎找不到一个很好的解释,非英语母语的人,它的意思是什么?请给予我一个具体的例子,有和没有wt.谢谢

1sbrub3j

1sbrub3j1#

wt代表"weights"
help('count')中的第一个例子使用了对象df,在我看来,这是非常清楚的。
首先,创建对象。

library(dplyr)

df <- tribble(
  ~name,    ~gender,   ~runs,
  "Max",    "male",       10,
  "Sandra", "female",      1,
  "Susan",  "female",      4
)

**1.**现在,一个没有wt的例子。

从上面的数据集可以看出,有

  1. 2排gender == "female";
  2. 1行gender == "male"
    而非加权计数将返回这些计数。
# counts rows:
df %>% count(gender)
## A tibble: 2 x 2
#  gender     n
#  <chr>  <int>
#1 female     2
#2 male       1

**2.**现在是一个权重的例子,参数为wt

假设原始数据中有10行男性行和5行女性行,所有男性行来自同一个体"Max",女性性别行来自两个个体,"Sandra"只有一行,"Susan"有4行。
然后,用户将原始的、未处理的数据按name进行聚合,结果就是发布的数据。要获得说明 * 原始 * 的计数,请使用加权计数。
这就是wt示例上面的注解所说的。

# use the `wt` argument to perform a weighted count. This is useful
# when the data has already been aggregated once
# counts runs:
df %>% count(gender, wt = runs)
## A tibble: 2 x 2
#  gender     n
#  <chr>  <dbl>
#1 female     5
#2 male      10
pqwbnv8z

pqwbnv8z2#

把它看作是“按和分组”,参见示例:

mtcars %>% 
  count(cyl, wt = mpg)
#   cyl     n
# 1   4 293.3
# 2   6 138.2
# 3   8 211.4

mtcars %>% 
  group_by(cyl) %>% 
  summarise(n = sum(mpg))
# # A tibble: 3 x 2
#     cyl     n
#   <dbl> <dbl>
# 1     4  293.
# 2     6  138.
# 3     8  211.

count {dplyr}

wt执行加权计数,将摘要从n = n()切换到n = sum(wt)

bcs8qyzn

bcs8qyzn3#

我将尝试用最简单的方式来解释这一点。如果我们有一个这样的数据集:Sample
这显示了不同的州,他们的县,以及每个县的人口。
例如,我们可以看到“加州”有多个县,每个县都有其人口。现在,如果我们想要每个州的总人口呢?这意味着将特定州的县人口加在一起,对吗?现在,这就是“wt”参数起作用的地方。看看这张图片Sample
现在我们可以看到,我们已经计算了每个州的人口数量,并按其人口对 n 列进行了加权(wt)。
我希望这能帮助你更好地理解它。所使用的图像的快照来自我在datacamp上的工作空间。

相关问题