我是R的新手。我在R的对数回报中有一个数据框,用于调整后的收盘价的一年。这是数据示例:
data <- read.csv("AAPL-Data.csv")
df <- data.frame(Log_Returns = diff(log(Ad(data))))
Log_Returns
1 6.326076e-03
2 1.824152e-02
3 3.683450e-03
4 -4.434373e-03
5 -2.394487e-02
6 1.729473e-03
7 -5.121480e-04
8 5.937422e-03
9 -4.401654e-03
10 6.373016e-03
11 3.520299e-02
12 2.225889e-02
13 1.381963e-02
14 -1.280049e-02
15 7.283613e-03
16 2.577874e-02
17 1.009374e-02
18 3.208668e-03
19 8.147066e-03
20 -2.044707e-03
我需要使用R来计算日志返回的天数介于0.01和0.015之间。不知道如何在不使用view(df)
来查看表并手动计算结果的情况下进行此操作。我可以使用一个功能来做到这一点吗?
答案 0 :(得分:1)
sum(df$Log_Returns >= 0.01 & df$Log_Returns <= 0.015)
答案 1 :(得分:0)
您还可以使用tidyverse
方法。
require(tidyverse)
df %>%
summarise(between = sum(Log_Returns > 0.01 & Log_Returns < 0.015),
notBetween = sum(!(Log_Returns > 0.01 & Log_Returns < 0.015)))
结果:
between notBetween
1 2 18
数据:
df <- read.csv(text = "Log_Returns
6.326076e-03
1.824152e-02
3.683450e-03
-4.434373e-03
-2.394487e-02
1.729473e-03
-5.121480e-04
5.937422e-03
-4.401654e-03
6.373016e-03
3.520299e-02
2.225889e-02
1.381963e-02
-1.280049e-02
7.283613e-03
2.577874e-02
1.009374e-02
3.208668e-03
8.147066e-03
-2.044707e-03")