【发布时间】:2017-06-14 00:26:18
【问题描述】:
在 Close 和 10ema Column 之间执行 % 更改。期望的输出是 % 差异关闭列 [3]
我的数据在数据框中
Close 10ema % Difference Close – 10ema / 10ema *100
12.81398 NA NA
13.2636 NA NA
13.54461 NA NA
13.76941 NA NA
13.82561 NA NA
13.88181 NA NA
13.76941 NA NA
13.88181 NA NA
13.4884 NA NA
13.4884 13.572704 -0.621128995
13.376 13.53693964 -1.188892325
13.376 13.50767788 -0.974837314
13.4884 13.50417281 -0.11679956
13.4322 13.49108685 -0.436487059
13.376 13.47016197 -0.699041087
13.376 13.45304161 -0.572670563
13.376 13.43903404 -0.469037013
我希望执行 Close 和 10ema 之间的 % 差异。
在 Excel 中我会使用:
=Sum (close 1 - 10ema)10ema *100
我正在使用的 R 代码:
new.dataframe$close.prct.ema.10 <- apply(new.dataframe[,c('Close', 'ema.10')], 1, function(x) { (x[1]-x[2]/x[2]) * 100 } )
我也在 [,C ('Close', 'ema.10')] 中指定要应用函数的列
函数前的 1 也是告诉代码逐行执行函数,如:, 1, function (x)
这部分 (x[1]/x[2]/x[2]) * 100 }) 试图说: 关闭 - ema10 / ema 10 *100
1和2指向[,C('Close', 'ema.10')中列名的表述顺序
但是,结果不起作用。该代码对我来说看起来很好并且很有意义,我在这里缺少什么?
【问题讨论】:
-
在没有看到数据的情况下很难提供帮助:stackoverflow.com/questions/5963269/….
-
他们使用 grobs,这是 grob 问题,因此该答案对我不起作用,因此是我的问题。
标签: r