我有一个{id,product type}唯一的表,并按年份运行:
id product_type sex year
1 A F 2000
1 B F 2000
1 B F 2001
1 A M 2000
1 B M 2000
1 B M 2001
等
我希望按年份获得性别比例表(按年份划分的男性和女性客户比例)。
这就是我试过的,
library(data.table)
DT <- data.table(salesdata)
DT[, .(distincts = length(unique(id))), by=list(year,sex)]
它给了我一年的性别数。我怎样才能逐年得出男性和女性的百分比或比例?
答案 0 :(得分:0)
试试这个:
gmodels::CrossTable(DT$sex, DT$year, prop.t = F, prop.chisq = F)
Cell Contents
|-------------------------|
| N |
| N / Row Total |
| N / Col Total |
|-------------------------|
Total Observations in Table: 6
| dt$year
dt$sex | 2000 | 2001 | Row Total |
-------------|-----------|-----------|-----------|
F | 2 | 1 | 3 |
| 0.667 | 0.333 | 0.500 |
| 0.500 | 0.500 | |
-------------|-----------|-----------|-----------|
M | 2 | 1 | 3 |
| 0.667 | 0.333 | 0.500 |
| 0.500 | 0.500 | |
-------------|-----------|-----------|-----------|
Column Total | 4 | 2 | 6 |
| 0.667 | 0.333 | |
-------------|-----------|-----------|-----------|