根据0到100之间的值,为R中的列的正收益提供动力

BD 100

我正在尝试创建风险/收益图。回报是每日平均价值。它不是百分比。我希望以百分比表示。当股票上涨100%时,相当于下跌了50%。如果股价上涨400%,则与下跌87.5%的股价相同。

我正在尝试将回报与以下乘以,具体取决于每个回报的价值:

  • 返回值介于0和49.99之间,返回值乘以2
  • 返回值介于50到74.99之间,将返回值乘以4
  • 返回值介于75和87.49之间,返回值乘以8
  • 返回值介于87.5和93.74之间,返回值乘以16
  • 返回值介于93.75和93.74之间,返回值乘以32 ...

以下是无法执行的if语句的代码:

if (( 0 <= Poi[,2]) & (Poi[,2] <= 49.99999999)){
  Poi[,2] <- Poi[,2]*MyReturn*2
} else if (( 50 <= Poi[,2]) & (Poi[,2] <= 74.99999999)){
  Poi[,2] <- Poi[,2]*MyReturn*4
} else if (( 75 <= Poi[,2]) & (Poi[,2] <= 87.49999999)){
  Poi[,2] <- Poi[,2]*MyReturn*8
} else if (( 87.5 <= Poi[,2]) & (Poi[,2] <= 93.74999999)){
  Poi[,2] <- Poi[,2]*MyReturn*16
} else if (( 93.75 <= Poi[,2]) & (Poi[,2] <= 96.87499999)){
  Poi[,2] <- Poi[,2]*MyReturn*32
} else if (( 96.875 <= Poi[,2]) & (Poi[,2] <= 98.43749999)){
  Poi[,2] <- Poi[,2]*MyReturn*64
} else if (( 98.4375 <= Poi[,2]) & (Poi[,2] <= 99.21874999)){
  Poi[,2] <- Poi[,2]*MyReturn*128
} else if (( 99.21875 <= Poi[,2]) & (Poi[,2] <= 99.60937499)){
  Poi[,2] <- Poi[,2]*MyReturn*256
} else if (( 99.609375 <= Poi[,2]) & (Poi[,2] <= 99.80468749)){
  Poi[,2] <- Poi[,2]*MyReturn*512
} else if (( 99.8046875 <= Poi[,2]) & (Poi[,2] <= 99.90234374)){
  Poi[,2] <- Poi[,2]*MyReturn*1024
} else if (( 99.90234375 <= Poi[,2]) & (Poi[,2] <= 99.951171865)){
  Poi[,2] <- Poi[,2]*MyReturn*2048
} else if ( 99.951171875 <= Poi[,2]){
  Poi[,2] <- Poi[,2]*MyReturn*4096
} else {
  Poi[,2] <- Poi[,2]*MyReturn
}

dput(然后):

structure(list(targetRisk = c(93.969862047238, 76.9768091680639, 
63.5982003855003, 54.5228767287575, 46.0821549451386, 37.6476764384589, 
29.2248472581225, 20.8278052738397, 12.5085917276091, 4.66122739912144, 
1.70147647969736, 4.34078819570542, 7.31911601372062, 10.4618350712519, 
13.948425299842, 17.515722070763, 21.228074686994, 25.1663931325116, 
29.261108015602, 33.5927110975208, 38.2162769926765, 43.116215831914, 
48.2106070287435, 53.5716998572496), targetReturn = c(-42.7922615561753, 
-38.2096263740965, -33.6269911920178, -29.0443560099391, -24.4617208278605, 
-19.8790856457821, -15.2964504637031, -10.7138152816245, -6.13118009954602, 
-1.54854491746736, 3.03409026461127, 7.6167254466899, 12.1993606287685, 
16.7819958108472, 21.3646309929257, 25.9472661750043, 30.5299013570829, 
35.1125365391614, 39.6951717212402, 44.2778069033188, 48.8604420853973, 
53.443077267476, 58.0257124495546, 62.6083466986961)), row.names = c("1", 
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", 
"14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"
), class = "data.frame")
阿克伦

创建索引以findInterval用乘数替换值然后执行*

out <- with(Poi, ifelse(targetReturn >=0, 
    targetReturn * 2^(1:12)[findInterval(targetReturn,
   c(-Inf, 49.99, 74.99, 87.49, 93.74, 98.43, 99.21, 99.60, 99.8, 99.90, 99.95))], targetReturn))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R根据列之间的匹配替换列中的值

来自分类Dev

根据R中两列的范围为列分配值

来自分类Dev

根据 R 中的条件将列的值设置为 NA

来自分类Dev

在Python中查找介于0到100之间的值范围内的索引

来自分类Dev

BASH检查argv是否为0到100之间的数字

来自分类Dev

如何根据列中的某个值为ag网格中的整个行提供背景色?

来自分类Dev

Java值必须介于0到100之间

来自分类Dev

根据R中另一列的值为列分配随机值

来自分类Dev

根据R中的列值计算和存储数据框中行之间的差异结果

来自分类Dev

“左联接” 0-100%到javascript中的统计值

来自分类Dev

根据值显示r中的特定列

来自分类Dev

根据R中的列值删除行

来自分类Dev

亮度在0到100之间变化

来自分类Dev

根据Pandas中两列之间的匹配查找值

来自分类Dev

预估收益调整为0

来自分类Dev

如何动态创建一个10到100的数组,值之间的间隔为10?

来自分类Dev

R根据先前观察到的值创建列

来自分类Dev

根据R中的一列合并100个文件

来自分类Dev

如何将数据框中的每一列重新缩放为0-100比例?(在r中)

来自分类Dev

如何将数据框中的每一列重新缩放为0-100比例?(在r中)

来自分类Dev

R中的排名收益

来自分类Dev

行值到R中的列

来自分类Dev

根据特定列中的值添加0或1

来自分类Dev

如果K列中的值为0,则删除C到K行并将单元格上移

来自分类Dev

如何在程序中包含输入的整数必须在0到100之间的数字?

来自分类Dev

根据R中另一列的值选择列

来自分类Dev

R:dplyr。突变一个列,该列对行中的值为0的列进行计数

来自分类Dev

R:dplyr。突变一个列,该列对行中的值为0的列进行计数

来自分类Dev

在Excel数据透视表中将0到1之间的值显示为“ <1”

Related 相关文章

  1. 1

    R根据列之间的匹配替换列中的值

  2. 2

    根据R中两列的范围为列分配值

  3. 3

    根据 R 中的条件将列的值设置为 NA

  4. 4

    在Python中查找介于0到100之间的值范围内的索引

  5. 5

    BASH检查argv是否为0到100之间的数字

  6. 6

    如何根据列中的某个值为ag网格中的整个行提供背景色?

  7. 7

    Java值必须介于0到100之间

  8. 8

    根据R中另一列的值为列分配随机值

  9. 9

    根据R中的列值计算和存储数据框中行之间的差异结果

  10. 10

    “左联接” 0-100%到javascript中的统计值

  11. 11

    根据值显示r中的特定列

  12. 12

    根据R中的列值删除行

  13. 13

    亮度在0到100之间变化

  14. 14

    根据Pandas中两列之间的匹配查找值

  15. 15

    预估收益调整为0

  16. 16

    如何动态创建一个10到100的数组,值之间的间隔为10?

  17. 17

    R根据先前观察到的值创建列

  18. 18

    根据R中的一列合并100个文件

  19. 19

    如何将数据框中的每一列重新缩放为0-100比例?(在r中)

  20. 20

    如何将数据框中的每一列重新缩放为0-100比例?(在r中)

  21. 21

    R中的排名收益

  22. 22

    行值到R中的列

  23. 23

    根据特定列中的值添加0或1

  24. 24

    如果K列中的值为0,则删除C到K行并将单元格上移

  25. 25

    如何在程序中包含输入的整数必须在0到100之间的数字?

  26. 26

    根据R中另一列的值选择列

  27. 27

    R:dplyr。突变一个列,该列对行中的值为0的列进行计数

  28. 28

    R:dplyr。突变一个列,该列对行中的值为0的列进行计数

  29. 29

    在Excel数据透视表中将0到1之间的值显示为“ <1”

热门标签

归档