如何用cut对年份进行分类?
我试图将 1928 年到 2022 年放入 R 中的十年类别中, 因为我想计算每个十年股市的平均回报率,
SP500 %>% mutate(decade = cut(SP500$Year, seq(1930,2020,by=10))) %>%
group_by(decade) %>% summarise(return = mean(`Annual\n% Change`))
# A tibble: 10 × 2
decade return
<fct> <dbl>
1 (1.93e+03,1.94e+03] 0.014
2 (1.94e+03,1.95e+03] 0.077
3 (1.95e+03,1.96e+03] 0.124
4 (1.96e+03,1.97e+03] 0.056
5 (1.97e+03,1.98e+03] 0.058
6 (1.98e+03,1.99e+03] 0.098
7 (1.99e+03,2e+03] 0.157
8 (2e+03,2.01e+03] 0.018
9 (2.01e+03,2.02e+03] 0.121
10 NA 0.04
我怎样才能将十年因子的标签更改为 1930-1940、1940-1950....
提前非常感谢
I am trying to put the years 1928 to 2022 into decades categories in R,
as I want to calculate the average return of the stock market for each decade
SP500 %>% mutate(decade = cut(SP500$Year, seq(1930,2020,by=10))) %>%
group_by(decade) %>% summarise(return = mean(`Annual\n% Change`))
# A tibble: 10 × 2
decade return
<fct> <dbl>
1 (1.93e+03,1.94e+03] 0.014
2 (1.94e+03,1.95e+03] 0.077
3 (1.95e+03,1.96e+03] 0.124
4 (1.96e+03,1.97e+03] 0.056
5 (1.97e+03,1.98e+03] 0.058
6 (1.98e+03,1.99e+03] 0.098
7 (1.99e+03,2e+03] 0.157
8 (2e+03,2.01e+03] 0.018
9 (2.01e+03,2.02e+03] 0.121
10 NA 0.04
how can i change the labels for the decade factor to something like 1930-1940, 1940-1950....
many thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您正在使用的函数的
labels=
参数接受length(breaks)-1
向量,以便您覆盖标签。或者也许为了更准确地使用范围命名法,我们可以这样做
The
labels=
argument to the function you're using accepts a vector oflength(breaks)-1
for you to override the labels.Or perhaps to be more accurate with the range nomenclature, we can do