# How to find the rate of return for a vector values in R?

To find the rate of return for a vector values, we can use the formula for rate of return. For example, if we have a vector called x then the rate of return can be calculated by using the syntax diff(x)/x[-length(x)]. The output will be in decimal form and if we want to convert it to percentage then the output needs to be multiplied with 100, we can also input the same within the formula as (diff(x)/x[-length(x)])*100.

## Example

Live Demo

x1<-rpois(100,80)
x1

## Output

[1]  59 74 66 82 88 78 66 63 68 70 82 77 73 82 87 86 78 83
[19] 101 75 70 77 71 77 79 68 90 81 85 79 81 99 64 64 74 90
[37] 90 71 70 88 74 91 89 80 96 78 80 74 72 90 101 63 89 77
[55] 67 81 74 79 76 75 82 95 65 74 80 77 73 83 110 92 93 71
[73] 87 84 70 74 101 72 89 68 94 77 71 87 89 87 66 80 67 65
[91] 84 80 92 85 86 73 75 78 78 81

## Example

RateOfReturn_x1<-diff(x1)/x1[-length(x1)]
RateOfReturn_x1

## Output

[1]   0.25423729 -0.10810811  0.24242424  0.07317073 -0.11363636 -0.15384615
[7]  -0.04545455  0.07936508  0.02941176  0.17142857 -0.06097561 -0.05194805
[13]  0.12328767  0.06097561 -0.01149425 -0.09302326  0.06410256  0.21686747
[19] -0.25742574 -0.06666667  0.10000000 -0.07792208  0.08450704  0.02597403
[25] -0.13924051  0.32352941 -0.10000000  0.04938272 -0.07058824  0.02531646
[31]  0.22222222 -0.35353535  0.00000000  0.15625000  0.21621622  0.00000000
[37] -0.21111111 -0.01408451  0.25714286 -0.15909091  0.22972973 -0.02197802
[43] -0.10112360  0.20000000 -0.18750000  0.02564103 -0.07500000 -0.02702703
[49]  0.25000000  0.12222222 -0.37623762  0.41269841 -0.13483146 -0.12987013
[55]  0.20895522 -0.08641975  0.06756757 -0.03797468 -0.01315789  0.09333333
[61]  0.15853659 -0.31578947  0.13846154  0.08108108 -0.03750000 -0.05194805
[67]  0.13698630  0.32530120 -0.16363636  0.01086957 -0.23655914  0.22535211
[73] -0.03448276 -0.16666667  0.05714286  0.36486486 -0.28712871  0.23611111
[79] -0.23595506  0.38235294 -0.18085106 -0.07792208  0.22535211  0.02298851
[85] -0.02247191 -0.24137931  0.21212121 -0.16250000 -0.02985075  0.29230769
[91] -0.04761905  0.15000000 -0.07608696  0.01176471 -0.15116279  0.02739726
[97]  0.04000000  0.00000000  0.03846154

## Example

Live Demo

x2<-rpois(100,50)
x2

## Output

[1]  58 53 67 49 49 52 57 41 51 50 44 61 55 54 53 49 53 52 63 42 50 46 60 57 55
[26] 44 47 59 54 35 66 46 48 40 55 52 49 59 59 59 44 58 44 50 55 45 58 48 67 40
[51] 38 40 58 48 49 51 50 54 35 34 52 62 61 58 47 53 49 54 48 47 43 44 60 55 61
[76] 45 62 51 66 53 57 43 45 47 57 48 52 54 42 55 51 43 45 42 49 38 48 46 54 55

## Example

RateOfReturn_x2<-diff(x2)/x2[-length(x2)]
RateOfReturn_x2

## Output

[1]  -0.08620690  0.26415094 -0.26865672  0.00000000  0.06122449  0.09615385
[7]  -0.28070175  0.24390244 -0.01960784 -0.12000000  0.38636364 -0.09836066
[13] -0.01818182 -0.01851852 -0.07547170  0.08163265 -0.01886792  0.21153846
[19] -0.33333333  0.19047619 -0.08000000  0.30434783 -0.05000000 -0.03508772
[25] -0.20000000  0.06818182  0.25531915 -0.08474576 -0.35185185  0.88571429
[31] -0.30303030  0.04347826 -0.16666667  0.37500000 -0.05454545 -0.05769231
[37]  0.20408163  0.00000000  0.00000000 -0.25423729  0.31818182 -0.24137931
[43]  0.13636364  0.10000000 -0.18181818  0.28888889 -0.17241379  0.39583333
[49] -0.40298507 -0.05000000  0.05263158  0.45000000 -0.17241379  0.02083333
[55]  0.04081633 -0.01960784  0.08000000 -0.35185185 -0.02857143  0.52941176
[61]  0.19230769 -0.01612903 -0.04918033 -0.18965517  0.12765957 -0.07547170
[67]  0.10204082 -0.11111111 -0.02083333 -0.08510638  0.02325581  0.36363636
[73] -0.08333333  0.10909091 -0.26229508  0.37777778 -0.17741935  0.29411765
[79] -0.19696970  0.07547170 -0.24561404  0.04651163  0.04444444  0.21276596
[85] -0.15789474  0.08333333  0.03846154 -0.22222222  0.30952381 -0.07272727
[91] -0.15686275  0.04651163 -0.06666667  0.16666667 -0.22448980  0.26315789
[97] -0.04166667  0.17391304  0.01851852

## Example

Live Demo

x3<-sample(1:100,100,replace=TRUE)
x3

## Output

[1]  68 56 58 33 53 60 75 31 2 39 7 34 12 65 82 79 69 37
[19] 14 88 34 74 85 94 34 13 73 13 9 61 99 45 26 48 87 99
[37] 42 55 37 48 85 16 33 86 22 31 64 13 1 26 34 23 37 40
[55] 51 3 86 55 47 77 50 93 73 43 82 37 11 29 44 34 86 99
[73] 32 62 31 11 25 30 54 8 40 22 85 41 65 61 78 76 49 7
[91] 54 74 36 84 100 68 23 68 60 93

## Example

RateOfReturn_x3<-diff(x3)/x3[-length(x3)]
RateOfReturn_x3

## Output

[1]  -0.17647059  0.03571429 -0.43103448  0.60606061  0.13207547  0.25000000
[7]  -0.58666667 -0.93548387 18.50000000 -0.82051282  3.85714286 -0.64705882
[13]  4.41666667  0.26153846 -0.03658537 -0.12658228 -0.46376812 -0.62162162
[19]  5.28571429 -0.61363636  1.17647059  0.14864865  0.10588235 -0.63829787
[25] -0.61764706  4.61538462 -0.82191781 -0.30769231  5.77777778  0.62295082
[31] -0.54545455 -0.42222222  0.84615385  0.81250000  0.13793103 -0.57575758
[37]  0.30952381 -0.32727273  0.29729730  0.77083333 -0.81176471  1.06250000
[43]  1.60606061 -0.74418605  0.40909091  1.06451613 -0.79687500 -0.92307692
[49] 25.00000000  0.30769231 -0.32352941  0.60869565  0.08108108  0.27500000
[55] -0.94117647 27.66666667 -0.36046512 -0.14545455  0.63829787 -0.35064935
[61]  0.86000000 -0.21505376 -0.41095890  0.90697674 -0.54878049 -0.70270270
[67]  1.63636364  0.51724138 -0.22727273  1.52941176  0.15116279 -0.67676768
[73]  0.93750000 -0.50000000 -0.64516129  1.27272727  0.20000000  0.80000000
[79] -0.85185185  4.00000000 -0.45000000  2.86363636 -0.51764706  0.58536585
[85] -0.06153846  0.27868852 -0.02564103 -0.35526316 -0.85714286  6.71428571
[91]  0.37037037 -0.51351351  1.33333333  0.19047619 -0.32000000 -0.66176471
[97]  1.95652174 -0.11764706  0.55000000

## Example

Live Demo

x4<-sample(1:10,100,replace=TRUE)
x4

## Output

[1]  3 2 5 10 10 10 3 2 6 3 5 9 8 9 4 2 2 10 7 5 7 5 10 4 4
[26] 6 6 9 8 3 9 5 9 10 5 5 3 2 3 1 8 9 5 10 9 6 10 4 4 8
[51] 6 2 10 10 10 6 4 9 4 9 1 8 3 8 5 1 10 7 4 2 10 9 4 10 3
[76] 2 3 10 1 4 7 3 1 9 10 2 1 8 5 7 10 1 5 3 1 6 9 2 1 4

## Example

RateOfReturn_x4<-diff(x4)/x4[-length(x4)]
RateOfReturn_x4

## Output

[1]  -0.3333333  1.5000000  1.0000000  0.0000000  0.0000000 -0.7000000
[7]  -0.3333333  2.0000000 -0.5000000  0.6666667  0.8000000 -0.1111111
[13]  0.1250000 -0.5555556 -0.5000000  0.0000000  4.0000000 -0.3000000
[19] -0.2857143  0.4000000 -0.2857143  1.0000000 -0.6000000  0.0000000
[25]  0.5000000  0.0000000  0.5000000 -0.1111111 -0.6250000  2.0000000
[31] -0.4444444  0.8000000  0.1111111 -0.5000000  0.0000000 -0.4000000
[37] -0.3333333  0.5000000 -0.6666667  7.0000000  0.1250000 -0.4444444
[43]  1.0000000 -0.1000000 -0.3333333  0.6666667 -0.6000000  0.0000000
[49]  1.0000000 -0.2500000 -0.6666667  4.0000000  0.0000000  0.0000000
[55] -0.4000000 -0.3333333  1.2500000 -0.5555556  1.2500000 -0.8888889
[61]  7.0000000 -0.6250000  1.6666667 -0.3750000 -0.8000000  9.0000000
[67] -0.3000000 -0.4285714 -0.5000000  4.0000000 -0.1000000 -0.5555556
[73]  1.5000000 -0.7000000 -0.3333333  0.5000000  2.3333333 -0.9000000
[79]  3.0000000  0.7500000 -0.5714286 -0.6666667  8.0000000  0.1111111
[85] -0.8000000 -0.5000000  7.0000000 -0.3750000  0.4000000  0.4285714
[91] -0.9000000  4.0000000 -0.4000000 -0.6666667  5.0000000  0.5000000
[97] -0.7777778 -0.5000000  3.0000000