library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyr)


stock_df <- read.csv("stock_df.csv")

stock_df_long <- stock_df %>%
  gather(key = "week", value = "price", -company) %>%
  separate(week, into = c("year", "week"), sep = "_week", convert = TRUE)          
head(stock_df)                                                                    
##     company X2019_week1 X2019_week2 X2019_week3 X2019_week4 X2019_week5
## 1    Amazon   1847.8400   1640.5601    1696.200     1670.57     1626.23
## 2     Apple     73.4125     38.0725      39.205       39.44       41.63
## 3  Facebook    205.2500    143.8000     150.040      149.01      165.71
## 4    Google   1337.0200   1057.1899    1098.260     1090.99     1110.75
## 5 Microsoft    157.7000    102.8000     107.710      107.17      102.78
##   X2019_week6 X2019_week7 X2019_week8 X2019_week9 X2019_week10 X2019_week11
## 1   1588.2200    1607.950   1631.5601   1671.7300    1620.8000      1712.36
## 2     42.6025      42.605     43.2425     43.7425      43.2275        46.53
## 3    167.3300     162.500    161.8900    162.2800     169.6000       165.98
## 4   1095.0601    1113.650   1110.3700   1140.9900    1142.3199      1184.46
## 5    105.6700     108.220    110.9700    112.5300     110.5100       115.91
##   X2019_week12 X2019_week13 X2019_week14 X2019_week15 X2019_week16 X2019_week17
## 1    1764.7700    1780.7500      1837.28    1843.0601     1861.690     1950.630
## 2      47.7625      47.4875        49.25      49.7175       50.965       51.075
## 3     164.3400     166.6900       175.72     179.1000      178.280      191.490
## 4    1205.5000    1173.3101      1207.15    1217.8700     1236.370     1272.180
## 5     117.0500     117.9400       119.89     120.9500      123.370      129.890
##   X2019_week18 X2019_week19 X2019_week20 X2019_week21 X2019_week22 X2019_week23
## 1    1962.4600     1889.980      1869.00    1823.2800    1775.0699    1804.0300
## 2      52.9375       49.295        47.25      44.7425      43.7675      47.5375
## 3     195.4700      188.340       185.30     181.0600     177.4700     173.3500
## 4    1185.4000     1164.270      1162.30    1133.4700    1103.6300    1066.0400
## 5     128.9000      127.130       128.07     126.2400     123.6800     131.4000
##   X2019_week24 X2019_week25 X2019_week26 X2019_week27 X2019_week28 X2019_week29
## 1     1869.670     1911.300      1893.63    1942.9100     2011.000    1964.5200
## 2       48.185       49.695        49.48      51.0575       50.825      50.6475
## 3      181.330      191.140       193.00     196.4000      204.870     198.3600
## 4     1085.350     1121.880      1080.91    1131.5900     1144.900    1130.1000
## 5      132.450      136.970       133.96     137.0600      138.900     136.6200
##   X2019_week30 X2019_week31 X2019_week32 X2019_week33 X2019_week34 X2019_week35
## 1     1943.050     1823.240    1807.5800     1792.570      1749.62     1776.290
## 2       51.935       51.005      50.2475       51.625        50.66       52.185
## 3      199.750      189.020     187.8500      183.700       177.75      185.670
## 4     1250.410     1193.990    1188.0100     1177.600      1151.29     1188.100
## 5      141.340      136.900     137.7100      136.130       133.39      137.860
##   X2019_week36 X2019_week37 X2019_week38 X2019_week39 X2019_week40 X2019_week41
## 1     1833.510    1839.3400    1794.1600     1725.450    1739.6500    1731.9200
## 2       53.315      54.6875      54.4325       54.705      56.7525      59.0525
## 3      187.490     187.1900     189.9300      177.100     180.4500     184.1900
## 4     1204.930    1239.5601    1229.9301     1225.090    1209.0000    1215.4500
## 5      139.100     137.3200     139.4400      137.730     138.1200     139.6800
##   X2019_week42 X2019_week43 X2019_week44 X2019_week45 X2019_week46 X2019_week47
## 1    1757.5100     1761.330     1791.440     1785.880      1739.49     1745.720
## 2      59.1025       61.645       63.955       65.035        66.44       65.445
## 3     185.8500      187.890      193.620      190.840       195.10      198.820
## 4    1245.4900     1265.130     1273.740     1311.370      1334.87     1295.340
## 5     137.4100      140.730      143.720      145.960       149.97      149.590
##   X2019_week48 X2019_week49 X2019_week50 X2019_week51 X2019_week52 X2020_week1
## 1    1800.8000    1751.6000    1760.9399      1786.50      1869.80   1874.9700
## 2      66.8125      67.6775      68.7875        69.86        72.45     74.3575
## 3     201.6400     201.0500     194.1100       206.30       208.10    208.6700
## 4    1304.9600    1340.6200    1347.8300      1349.59      1351.89   1360.6600
## 5     151.3800     151.7500     154.5300       157.41       158.96    158.6200
##   X2020_week2 X2020_week3 X2020_week4 X2020_week5 X2020_week6 X2020_week7
## 1   1883.1600   1864.7200   1861.6400   2008.7200   2079.2800   2134.8701
## 2     77.5825     79.6825     79.5775     77.3775     80.0075     81.2375
## 3    218.0600    222.1400    217.9400    201.9100    212.3300    214.1800
## 4   1429.7300   1480.3900   1466.7100   1434.2300   1479.2300   1520.7400
## 5    161.3400    167.1000    165.0400    170.2300    183.8900    185.3500
##   X2020_week8 X2020_week9 X2020_week10 X2020_week11 X2020_week12 X2020_week13
## 1   2095.9700     1883.75    1901.0900    1785.0000      1846.09     1900.100
## 2     78.2625       68.34      72.2575      69.4925        57.31       61.935
## 3    210.1800      192.47     181.0900     170.2800       149.73      156.790
## 4   1485.1100     1339.33    1298.4100    1219.7300      1072.32     1110.710
## 5    178.5900      162.01     161.5700     158.8300       137.35      149.700
##   X2020_week14 X2020_week15 X2020_week16 X2020_week17 X2020_week18 X2020_week19
## 1    1906.5900    2042.7600      2375.00    2410.2200    2286.0400    2379.6101
## 2      60.3525      66.9975        70.70      70.7425      72.2675      77.5325
## 3     154.1800     175.1900       179.24     190.0700     202.2700     212.3500
## 4    1097.8800    1211.4500      1283.25    1279.3101    1320.6100    1388.3700
## 5     153.8300     165.1400       178.60     174.5500     174.5700     184.6800
##   X2020_week20 X2020_week21 X2020_week22 X2020_week23 X2020_week24 X2020_week25
## 1    2409.7800    2436.8799     2442.370     2483.000      2545.02      2675.01
## 2      76.9275      79.7225       79.485       82.875        84.70        87.43
## 3     210.8800     234.9100      225.090      230.770       228.58       238.79
## 4    1373.1899    1410.4200     1428.920     1438.390      1413.18      1431.72
## 5     183.1600     183.5100      183.250      187.200       187.74       195.15
##   X2020_week26 X2020_week27 X2020_week28 X2020_week29 X2020_week30 X2020_week31
## 1    2692.8701    2890.3000      3200.00    2961.9700     3008.910      3164.68
## 2      88.4075      91.0275        95.92      96.3275       92.615       106.26
## 3     216.0800     233.4200       245.07     242.0300      230.710       253.67
## 4    1359.9000    1464.7000      1541.74    1515.5500     1511.870      1482.96
## 5     196.3300     206.2600       213.67     202.8800      201.300       205.01
##   X2020_week32 X2020_week33 X2020_week34 X2020_week35 X2020_week36 X2020_week37
## 1    3167.4600    3148.0200      3284.72    3401.8000      3294.62      3116.22
## 2     111.1125     114.9075       124.37     124.8075       120.96       112.00
## 3     268.4400     261.2400       267.01     293.6600       282.73       266.61
## 4    1494.4900    1507.7300      1580.42    1644.4100      1591.04      1520.72
## 5     212.4800     208.9000       213.02     228.9100       214.25       204.03
##   X2020_week38 X2020_week39 X2020_week40 X2020_week41 X2020_week42 X2020_week43
## 1      2954.91      3095.13      3125.00      3286.65      3272.71      3204.40
## 2       106.84       112.28       113.02       116.97       119.02       115.04
## 3       252.53       254.82       259.94       264.45       265.93       284.79
## 4      1459.99      1444.96      1458.42      1515.22      1573.01      1641.00
## 5       200.39       207.82       206.19       215.81       219.66       216.23
##   X2020_week44 X2020_week45 X2020_week46 X2020_week47 X2020_week48 X2020_week49
## 1      3036.15      3311.37      3128.81      3099.40      3195.34      3162.58
## 2       108.86       118.69       119.26       117.34       116.59       122.25
## 3       263.11       293.41       276.95       269.70       277.81       279.70
## 4      1621.01      1761.75      1777.02      1742.19      1793.19      1827.99
## 5       202.47       223.72       216.51       210.39       215.23       214.36
##   X2020_week50 X2020_week51 X2020_week52 X2020_week53
## 1      3116.42      3201.65      3172.69      3256.93
## 2       122.41       126.66       131.97       132.69
## 3       273.55       276.40       267.40       273.16
## 4      1781.77      1731.01      1738.85      1751.88
## 5       213.26       218.59       222.75       222.42
head(stock_df_long)
##     company  year week     price
## 1    Amazon X2019    1 1847.8400
## 2     Apple X2019    1   73.4125
## 3  Facebook X2019    1  205.2500
## 4    Google X2019    1 1337.0200
## 5 Microsoft X2019    1  157.7000
## 6    Amazon X2019    2 1640.5601