R 我如何找到一只股票的最大价值并在它发生的当天返回
我有一个股票每日收益率的小数据集,我必须编写一个函数,找到最高收益率并提取它发生的日期。有什么建议吗 这是数据集:R 我如何找到一只股票的最大价值并在它发生的当天返回,r,max,R,Max,我有一个股票每日收益率的小数据集,我必须编写一个函数,找到最高收益率并提取它发生的日期。有什么建议吗 这是数据集: > df VWD_RET DATE Daily_Return 1 0.009312 2015-03-20 Fri 2 -0.001045 2015-03-23 Mon 3 -0.004701 2015-03-24 Tue 4 -0.014949 2015-03-25 Wed 5 -0
> df
VWD_RET DATE Daily_Return
1 0.009312 2015-03-20 Fri
2 -0.001045 2015-03-23 Mon
3 -0.004701 2015-03-24 Tue
4 -0.014949 2015-03-25 Wed
5 -0.002183 2015-03-26 Thu
6 0.002501 2015-03-27 Fri
7 0.011713 2015-03-30 Mon
8 -0.007162 <NA> <NA>
>
>df
VWD RET日期每日退货
1 0.009312 2015-03-20星期五
2-0.001045 2015-03-23周一
3-0.004701 2015-03-24星期二
4-0.014949 2015-03-25星期三
5-0.002183 2015-03-26周四
6 0.002501 2015-03-27星期五
7 0.011713 2015-03-30周一
8 -0.007162
>
执行以下操作:
df$Daily_Return[ df$VWD_RET == max(df$VWD_RET) ]
表达式
df$VWD_RET==max(df$VWD_RET)
将返回一个真和假向量,仅在那些等于最大值的值上为真 练习R语法有很多选择
基本包
输出:
[1] "Mon"
Daily_Return
1 Mon
[1] "Mon"
Daily_Return
1 Mon
dplyr
输出:
[1] "Mon"
Daily_Return
1 Mon
[1] "Mon"
Daily_Return
1 Mon
按VWD\u RET
降序订购,然后选择Daily\u Return
arrange(df, desc(VWD_RET))[1, 3]
输出:
[1] "Mon"
Daily_Return
1 Mon
[1] "Mon"
Daily_Return
1 Mon
sqldf
输出:
[1] "Mon"
Daily_Return
1 Mon
[1] "Mon"
Daily_Return
1 Mon
我想答案就在那里:谢谢,但我不认为这是答案。实际上,我需要找到“VWD_RET”上的最大值,并得到一个表示“星期一”的答案(这是最高值)。我曾经尝试过这样做:max(df$VWD_RET,by=df$Daily_Return),但得到的答案是NA。非常感谢,这很有效:-)