如何创建依赖于标识符的变量?

时间:2018-12-27 11:09:12

标签: r

这里共有R个新手。我正在尝试为数据集中的公司创建/计算风险衡量变量。

我的数据集如下:

   # A tibble: 6,971 x 14
   ISIN   Jahr Prüfungsurteil Prüfungshonorar Returns Name  Branchencode Bilanzsumme Wirtschaftsprue~ Eigenkapital
   <chr> <dbl> <chr>                    <dbl>   <dbl> <chr> <chr>              <dbl> <chr>                   <dbl>
 1 AU00~  2015 uneingeschrän~              NA   NA    Marl~ G47919          15687199 NA                   15012287
 2 AU00~  2016 uneingeschrän~              NA   NA    Marl~ G47919          29921136 Pricewaterhouse~     24797985
 3 DE00~  2005 uneingeschrän~              NA   NA    FinL~ M70101              8087 NA                       3788
 4 DE00~  2006 uneingeschrän~              NA   NA    FinL~ M70101          27565119 Oberfränkische ~     14858993
 5 DE00~  2007 uneingeschrän~              NA    4.48 FinL~ M70101          79490000 Verhülsdonk & P~     58038000
 6 DE00~  2008 uneingeschrän~           44000  -52.9  FinL~ M70101          61159000 Verhülsdonk & P~     49004000
 7 DE00~  2009 uneingeschrän~           60000  -66.1  FinL~ M70101          61092000 Verhülsdonk & P~     48635000
 8 DE00~  2010 uneingeschrän~           65000  -25.   FinL~ M70101          61689000 Verhülsdonk & P~     52334000
 9 DE00~  2011 uneingeschrän~           60000  -65.6  FinL~ M70101          40725000 ifb Treuhand Gm~     33143000
10 DE00~  2012 uneingeschrän~              NA  -82.1  FinL~ M70101          29232000 ifb Treuhand Gm~     24047000

我考虑将风险度量定义为(公司-退货-标准-偏差)-(总退货-标准-偏差)。

总退货标准差的计算公式为:

sd(Returns, na.rm=TRUE)

我不知道如何分别计算每个公司的标准差。我尝试过

sd(Returns[ISIN], na.rm=True)

但是输出为 NA

1 个答案:

答案 0 :(得分:0)

sd可以应用于vector /列。在这里,OP希望获得按“ ISIN”分组的“ Returns”列的标准差

library(dplyr)
df1 %>%
  group_by(ISIN) %>%
  summarise(returnsD = sd(Returns, na.rm = TRUE))