首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用库reshape2共享变量

使用库reshape2共享变量
EN

Stack Overflow用户
提问于 2018-03-26 01:13:59
回答 1查看 28关注 0票数 0

我将文档(.csv)上传到项目中。有9列(9个变量)。在任务中说,有必要将一个变量(工资)分成几组(平均工资、中位数、峰度、标准差),但仍然需要指明性别(变量性别)和男人是否结婚(变量婚姻状况)。例如,有以下数据:

代码语言:javascript
复制
wages   gender  status  ............
5000      M       NO
3000      M       Yes
4500      W       NO
2000      M       NO
3500      W       Yes
6500      M       NO
8000      W       NO
.
.
.
.

如果我们除以平均工资,则必须:1)对于身份不是(5000+2000+6500)的人,/3=4500

代码语言:javascript
复制
wages   gender  status
4500      M       NO

有什么方法可以做到这一点呢?

EN

回答 1

Stack Overflow用户

发布于 2018-03-26 01:24:27

如果我没有理解错的话,你是在寻找性别和地位的每一个独特组合的平均工资吗?如果是这样,您可以使用dplyr包。例如,如果您上传的数据是df

代码语言:javascript
复制
library(dplyr)
library(e1071)

df <- data.frame(wages=c(5000, 3000, 4500, 2000, 3500, 6500, 8000),
                 gender=c('M', 'M', 'W', 'M', 'W', 'M', 'W'),
                 status=c('NO', 'YES', 'NO', 'NO', 'YES', 'NO', 'NO'))

df_out <- df %>%
  group_by(gender, status) %>%
  summarise(avg_wage = mean(wages),
      median_val = median(wages),
      st_dev= sd(wages),
      kurt = kurtosis(wages))

df_out

# A tibble: 4 x 6
# Groups:   gender [?]
  gender status avg_wage median_val   st_dev      kurt
  <fctr> <fctr>    <dbl>      <dbl>    <dbl>     <dbl>
1      M     NO     4500       5000 2291.288 -2.333333
2      M    YES     3000       3000       NA       NaN
3      W     NO     6250       6250 2474.874 -2.750000
4      W    YES     3500       3500       NA       NaN
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49478581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档