# HỌ VÀ TÊN: LÊ HUY HOÀNG
# LỚP: 24NH1
# MSSV:2454020018
# BÀI THỰC HÀNH CUỐI KỲ
# NHẬP LIỆU
huyhoang=file.choose()
datadulieu=read.csv(huyhoang,header=TRUE)
save(datadulieu,file="datadulieu.rda")
attach(datadulieu)
is.data.frame(datadulieu)
## [1] TRUE
# CÂU B MÃ HÓA DỮ LIỆU
## MÃ HÓA VCB
VCB=as.numeric(gsub(",","",datadulieu$VCB))
VCBMH=VCB
VCBMH=replace(VCBMH,VCB<=62,1)
VCBMH=replace(VCBMH,VCB>62,2)
VCB=data.frame(VCB,VCBMH)
VCB
## VCB VCBMH
## 1 57500 2
## 2 57600 2
## 3 58900 2
## 4 58900 2
## 5 58300 2
## 6 57900 2
## 7 58000 2
## 8 58200 2
## 9 57600 2
## 10 56800 2
## 11 59000 2
## 12 62200 2
## 13 63000 2
## 14 57600 2
## 15 71500 2
## 16 62900 2
## 17 58200 2
## 18 61600 2
## 19 62100 2
## 20 57100 2
## 21 71800 2
## 22 61600 2
## 23 57700 2
## 24 61900 2
## 25 62000 2
## 26 60800 2
## 27 58700 2
## 28 70800 2
## 29 63000 2
## 30 60700 2
## 31 62200 2
## 32 60000 2
## 33 58900 2
## 34 57100 2
## 35 68400 2
## 36 62500 2
## 37 59900 2
## 38 61700 2
## 39 59300 2
## 40 57000 2
## 41 57300 2
## 42 65100 2
## 43 61600 2
## 44 58000 2
## 45 60500 2
## 46 61200 2
## 47 59000 2
## 48 57300 2
## 49 59600 2
## 50 58000 2
## 51 60300 2
## 52 61300 2
## 53 59700 2
## 54 58000 2
## 55 57200 2
## 56 63700 2
## 57 60200 2
## 58 60700 2
## 59 61300 2
## 60 61600 2
## 61 58100 2
## 62 56600 2
## 63 68000 2
## 64 65000 2
## 65 57300 2
## 66 59400 2
## 67 61500 2
## 68 61100 2
## 69 58700 2
## 70 56700 2
## 71 63100 2
## 72 60400 2
## 73 59800 2
## 74 61700 2
## 75 60500 2
## 76 60300 2
## 77 59000 2
## 78 64700 2
## 79 60400 2
## 80 60300 2
## 81 61600 2
## 82 59800 2
## 83 58200 2
## 84 72700 2
## 85 64200 2
## 86 59800 2
## 87 59900 2
## 88 61600 2
## 89 59700 2
## 90 74000 2
## 91 64400 2
## 92 59000 2
## 93 59200 2
## 94 60100 2
## 95 58900 2
## 96 59500 2
## 97 59800 2
## 98 76000 2
## 99 59300 2
## 100 61000 2
## 101 59200 2
## 102 58500 2
## 103 58500 2
## 104 60000 2
## 105 71900 2
## 106 59900 2
## 107 60700 2
## 108 61600 2
## 109 59200 2
## 110 60000 2
## 111 56800 2
## 112 73000 2
## 113 58800 2
## 114 59400 2
## 115 61800 2
## 116 58910 2
## 117 59300 2
## 118 56900 2
## 119 60500 2
## 120 59500 2
## 121 62200 2
## 122 58017 2
## 123 58200 2
## 124 59600 2
## 125 60200 2
## 126 56700 2
## 127 60500 2
## 128 63200 2
## 129 61600 2
## 130 58000 2
## 131 59900 2
## 132 59900 2
## 133 56800 2
## 134 72700 2
## 135 59800 2
## 136 64400 2
## 137 61700 2
## 138 57400 2
## 139 59400 2
## 140 57500 2
## 141 73500 2
## 142 58000 2
## 143 60100 2
## 144 64600 2
## 145 56232 2
## 146 57800 2
## 147 59400 2
## 148 72800 2
## 149 59600 2
## 150 64900 2
## 151 56232 2
## 152 59100 2
## 153 58900 2
## 154 59000 2
## 155 71000 2
## 156 59400 2
## 157 63500 2
## 158 61300 2
## 159 54050 2
## 160 58900 2
## 161 57800 2
## 162 68600 2
## 163 66400 2
## 164 57600 2
## 165 62800 2
## 166 61300 2
## 167 54000 2
## 168 58500 2
## 169 57200 2
## 170 65000 2
## 171 58200 2
## 172 60600 2
## 173 61000 2
## 174 54100 2
## 175 59200 2
## 176 58100 2
## 177 58800 2
## 178 57000 2
## 179 65100 2
## 180 58400 2
## 181 63700 2
## 182 60800 2
## 183 59400 2
## 184 58000 2
## 185 58200 2
## 186 57100 2
## 187 69600 2
## 188 65400 2
## 189 57900 2
## 190 64400 2
## 191 61400 2
## 192 60300 2
## 193 58100 2
## 194 57100 2
## 195 70600 2
## 196 64900 2
## 197 58800 2
## 198 64200 2
## 199 54000 2
## 200 60100 2
## 201 57900 2
## 202 69600 2
## 203 59800 2
## 204 62800 2
## 205 54100 2
## 206 60100 2
## 207 58300 2
## 208 57400 2
## 209 69800 2
## 210 59800 2
## 211 62000 2
## 212 62000 2
## 213 54600 2
## 214 58000 2
## 215 57100 2
## 216 70500 2
## 217 58000 2
## 218 62200 2
## 219 56500 2
## 220 58000 2
## 221 57300 2
## 222 58100 2
## 223 59300 2
## 224 57500 2
## MÃ HÓA VN30
VN30=as.numeric(gsub(",","",datadulieu$VN30))
VN30MH=VN30
VN30MH=replace(VN30MH,VN30<=1900,1)
VN30MH=replace(VN30MH,VN30>1900,2)
VN30=data.frame(VN30,VN30MH)
VN30
## VN30 VN30MH
## 1 1923.92 2
## 2 1933.56 2
## 3 1950.12 2
## 4 1971.99 2
## 5 1979.53 2
## 6 1975.50 2
## 7 1983.82 2
## 8 1973.02 2
## 9 1946.98 2
## 10 1924.29 2
## 11 1829.59 1
## 12 1997.06 2
## 13 1995.71 2
## 14 1906.81 2
## 15 2029.81 2
## 16 2061.75 2
## 17 1861.84 1
## 18 1989.71 2
## 19 2013.35 2
## 20 1890.57 1
## 21 2004.31 2
## 22 2010.75 2
## 23 1852.99 1
## 24 1972.99 2
## 25 2009.04 2
## 26 1872.07 1
## 27 1982.96 2
## 28 1997.69 2
## 29 1959.35 2
## 30 2022.75 2
## 31 1974.60 2
## 32 1917.69 2
## 33 1961.57 2
## 34 2030.63 2
## 35 1988.19 2
## 36 1956.53 2
## 37 2014.62 2
## 38 1982.29 2
## 39 1927.35 2
## 40 1875.99 1
## 41 2028.68 2
## 42 1969.27 2
## 43 1942.76 2
## 44 1837.43 1
## 45 2032.30 2
## 46 2002.56 2
## 47 1916.88 2
## 48 1894.46 1
## 49 2055.96 2
## 50 1836.25 1
## 51 2053.41 2
## 52 1991.11 2
## 53 1902.79 2
## 54 1984.89 2
## 55 1898.82 1
## 56 2096.76 2
## 57 1840.96 1
## 58 2079.10 2
## 59 1986.28 2
## 60 1995.91 2
## 61 1963.01 2
## 62 1894.20 1
## 63 2074.03 2
## 64 1943.60 2
## 65 1904.19 2
## 66 1931.01 2
## 67 1936.81 2
## 68 1998.44 2
## 69 1968.52 2
## 70 1877.00 1
## 71 1947.75 2
## 72 1780.71 1
## 73 1915.01 2
## 74 1951.92 2
## 75 1987.11 2
## 76 1911.09 2
## 77 1967.64 2
## 78 1951.58 2
## 79 1836.96 1
## 80 2074.06 2
## 81 1960.97 2
## 82 1925.18 2
## 83 1976.82 2
## 84 2066.21 2
## 85 2000.90 2
## 86 1889.94 1
## 87 2040.51 2
## 88 1947.28 2
## 89 1922.53 2
## 90 2080.24 2
## 91 2016.47 2
## 92 1859.80 1
## 93 1928.23 2
## 94 2053.97 2
## 95 1970.82 2
## 96 1936.46 2
## 97 1872.27 1
## 98 2089.21 2
## 99 1925.66 2
## 100 2043.51 2
## 101 1939.84 2
## 102 1909.23 2
## 103 1936.69 2
## 104 1864.23 1
## 105 2067.10 2
## 106 1946.55 2
## 107 2068.62 2
## 108 1944.36 2
## 109 1946.06 2
## 110 1928.57 2
## 111 1867.03 1
## 112 2047.48 2
## 113 1853.60 1
## 114 1961.60 2
## 115 1962.48 2
## 116 1916.05 2
## 117 1951.14 2
## 118 1869.84 1
## 119 1852.99 1
## 120 1979.19 2
## 121 1960.19 2
## 122 1941.65 2
## 123 1876.81 1
## 124 1954.29 2
## 125 1871.54 1
## 126 1909.87 2
## 127 1873.65 1
## 128 2050.58 2
## 129 1957.17 2
## 130 1877.68 1
## 131 1975.01 2
## 132 1893.54 1
## 133 1897.95 1
## 134 2080.35 2
## 135 1868.84 1
## 136 2046.37 2
## 137 1967.22 2
## 138 1876.14 1
## 139 1898.07 1
## 140 1903.47 2
## 141 2094.24 2
## 142 1854.19 1
## 143 1988.11 2
## 144 2027.45 2
## 145 1931.65 2
## 146 1875.73 1
## 147 1886.20 1
## 148 2085.61 2
## 149 2009.04 2
## 150 2028.94 2
## 151 1887.32 1
## 152 1887.06 1
## 153 1964.17 2
## 154 1897.46 1
## 155 2080.38 2
## 156 2007.08 2
## 157 2027.51 2
## 158 1963.57 2
## 159 1881.32 1
## 160 1953.26 2
## 161 1933.28 2
## 162 2082.35 2
## 163 2018.64 2
## 164 1797.99 1
## 165 2025.41 2
## 166 1980.13 2
## 167 1826.90 1
## 168 1965.36 2
## 169 1985.28 2
## 170 2039.80 2
## 171 1741.05 1
## 172 2024.74 2
## 173 1995.12 2
## 174 1845.32 1
## 175 1927.79 2
## 176 1954.91 2
## 177 1899.89 1
## 178 2012.87 2
## 179 2050.85 2
## 180 1770.16 1
## 181 2010.93 2
## 182 2010.15 2
## 183 1942.00 2
## 184 1932.15 2
## 185 1916.36 2
## 186 2023.13 2
## 187 2077.76 2
## 188 2049.64 2
## 189 1814.73 1
## 190 2021.72 2
## 191 2004.62 2
## 192 1936.15 2
## 193 1909.60 2
## 194 1976.21 2
## 195 2032.28 2
## 196 2069.82 2
## 197 1791.25 1
## 198 2027.90 2
## 199 1829.36 1
## 200 1970.01 2
## 201 1923.55 2
## 202 2019.88 2
## 203 2011.42 2
## 204 2022.46 2
## 205 1806.50 1
## 206 1979.23 2
## 207 1938.50 2
## 208 1921.18 2
## 209 1997.13 2
## 210 2041.40 2
## 211 1999.82 2
## 212 2008.57 2
## 213 1824.35 1
## 214 1922.42 2
## 215 1965.97 2
## 216 2018.98 2
## 217 1821.53 1
## 218 2004.29 2
## 219 1849.12 1
## 220 1914.35 2
## 221 1990.66 2
## 222 1811.92 1
## 223 1886.27 1
## 224 2009.70 2
## MÃ HÓA HNX
HNX=as.numeric(gsub(",","",datadulieu$HNX))
HNXMH=HNX
HNXMH=replace(HNXMH,HNX<=260,1)
HNXMH=replace(HNXMH,HNX>260,2)
HNX=data.frame(HNX,HNXMH)
HNX
## HNX HNXMH
## 1 261.08 2
## 2 258.87 1
## 3 260.11 2
## 4 262.66 2
## 5 264.80 2
## 6 261.58 2
## 7 259.05 1
## 8 257.81 1
## 9 258.31 1
## 10 256.96 1
## 11 254.48 1
## 12 305.66 2
## 13 315.09 2
## 14 272.71 2
## 15 260.39 2
## 16 262.82 2
## 17 251.74 1
## 18 316.56 2
## 19 313.98 2
## 20 268.92 2
## 21 265.71 2
## 22 261.52 2
## 23 251.36 1
## 24 326.03 2
## 25 313.28 2
## 26 279.89 2
## 27 285.17 2
## 28 268.97 2
## 29 260.96 2
## 30 252.53 1
## 31 317.48 2
## 32 287.11 2
## 33 284.05 2
## 34 251.33 1
## 35 267.68 2
## 36 260.12 2
## 37 250.61 1
## 38 304.86 2
## 39 296.49 2
## 40 269.62 2
## 41 248.52 1
## 42 263.17 2
## 43 258.91 1
## 44 248.97 1
## 45 249.11 1
## 46 308.91 2
## 47 301.37 2
## 48 271.83 2
## 49 249.82 1
## 50 246.91 1
## 51 249.44 1
## 52 296.95 2
## 53 300.10 2
## 54 283.90 2
## 55 266.16 2
## 56 250.99 1
## 57 253.39 1
## 58 248.49 1
## 59 298.36 2
## 60 301.59 2
## 61 282.46 2
## 62 260.23 2
## 63 250.55 1
## 64 258.28 1
## 65 253.64 1
## 66 253.32 1
## 67 306.95 2
## 68 307.46 2
## 69 281.87 2
## 70 262.06 2
## 71 258.34 1
## 72 242.07 1
## 73 252.47 1
## 74 313.83 2
## 75 313.80 2
## 76 295.25 2
## 77 279.71 2
## 78 256.86 1
## 79 247.02 1
## 80 249.16 1
## 81 305.69 2
## 82 290.91 2
## 83 279.44 2
## 84 251.88 1
## 85 256.98 1
## 86 247.85 1
## 87 253.41 1
## 88 307.07 2
## 89 291.86 2
## 90 254.29 1
## 91 257.28 1
## 92 248.44 1
## 93 253.18 1
## 94 255.86 1
## 95 304.09 2
## 96 292.39 2
## 97 267.46 2
## 98 254.59 1
## 99 254.06 1
## 100 257.42 1
## 101 297.34 2
## 102 283.74 2
## 103 273.71 2
## 104 268.20 2
## 105 254.13 1
## 106 254.21 1
## 107 259.95 1
## 108 311.55 2
## 109 297.71 2
## 110 274.13 2
## 111 251.95 1
## 112 255.35 1
## 113 247.48 1
## 114 256.49 1
## 115 320.11 2
## 116 291.57 2
## 117 274.39 2
## 118 255.65 1
## 119 248.88 1
## 120 261.80 2
## 121 330.22 2
## 122 293.01 2
## 123 280.59 2
## 124 275.25 2
## 125 269.76 2
## 126 256.42 1
## 127 248.68 1
## 128 260.34 2
## 129 339.91 2
## 130 284.48 2
## 131 277.33 2
## 132 269.95 2
## 133 254.07 1
## 134 255.57 1
## 135 247.78 1
## 136 262.20 2
## 137 337.39 2
## 138 283.33 2
## 139 267.97 2
## 140 255.88 1
## 141 256.90 1
## 142 246.08 1
## 143 260.98 2
## 144 262.88 2
## 145 294.01 2
## 146 281.56 2
## 147 265.78 2
## 148 253.39 1
## 149 259.27 1
## 150 265.74 2
## 151 288.50 2
## 152 284.85 2
## 153 277.17 2
## 154 264.23 2
## 155 258.43 1
## 156 256.76 1
## 157 268.72 2
## 158 325.37 2
## 159 282.22 2
## 160 281.48 2
## 161 257.29 1
## 162 258.76 1
## 163 261.96 2
## 164 243.46 1
## 165 256.31 1
## 166 330.63 2
## 167 281.37 2
## 168 278.96 2
## 169 257.93 1
## 170 264.05 2
## 171 243.81 1
## 172 253.73 1
## 173 327.40 2
## 174 282.75 2
## 175 289.88 2
## 176 276.77 2
## 177 264.91 2
## 178 257.39 1
## 179 265.33 2
## 180 249.71 1
## 181 272.38 2
## 182 321.51 2
## 183 286.01 2
## 184 273.56 2
## 185 261.93 2
## 186 255.39 1
## 187 253.62 1
## 188 264.07 2
## 189 250.27 1
## 190 278.39 2
## 191 322.22 2
## 192 283.67 2
## 193 262.12 2
## 194 251.91 1
## 195 252.85 1
## 196 263.69 2
## 197 252.36 1
## 198 283.63 2
## 199 275.95 2
## 200 284.35 2
## 201 263.36 2
## 202 256.52 1
## 203 252.87 1
## 204 288.08 2
## 205 271.00 2
## 206 285.24 2
## 207 273.22 2
## 208 261.90 2
## 209 254.35 1
## 210 251.70 1
## 211 294.94 2
## 212 325.85 2
## 213 272.81 2
## 214 272.27 2
## 215 251.77 1
## 216 256.86 1
## 217 252.36 1
## 218 318.54 2
## 219 275.89 2
## 220 272.07 2
## 221 252.21 1
## 222 252.76 1
## 223 278.50 2
## 224 251.38 1
# CÂU C THỐNG KÊ CÁC CHỈ SỐ TÀI CHÍNH
## THỐNG KÊ CÁC BIẾN
library(psych)
ABCDEF=data.frame(VCB,VN30,HNX)
describe(ABCDEF)
## vars n mean sd median trimmed mad min max
## VCB 1 224 60752.86 4080.88 59800.00 60091.82 2668.68 54000.00 76000.00
## VCBMH 2 224 2.00 0.00 2.00 2.00 0.00 2.00 2.00
## VN30 3 224 1954.72 72.80 1960.58 1956.74 75.28 1741.05 2096.76
## VN30MH 4 224 1.76 0.43 2.00 1.82 0.00 1.00 2.00
## HNX 5 224 272.08 22.22 263.87 269.09 17.48 242.07 339.91
## HNXMH 6 224 1.60 0.49 2.00 1.63 0.00 1.00 2.00
## range skew kurtosis se
## VCB 22000.00 1.54 2.35 272.67
## VCBMH 0.00 NaN NaN 0.00
## VN30 355.71 -0.28 -0.40 4.86
## VN30MH 1.00 -1.20 -0.56 0.03
## HNX 97.84 1.05 0.25 1.48
## HNXMH 1.00 -0.42 -1.83 0.03
psych::describe(ABCDEF)
## vars n mean sd median trimmed mad min max
## VCB 1 224 60752.86 4080.88 59800.00 60091.82 2668.68 54000.00 76000.00
## VCBMH 2 224 2.00 0.00 2.00 2.00 0.00 2.00 2.00
## VN30 3 224 1954.72 72.80 1960.58 1956.74 75.28 1741.05 2096.76
## VN30MH 4 224 1.76 0.43 2.00 1.82 0.00 1.00 2.00
## HNX 5 224 272.08 22.22 263.87 269.09 17.48 242.07 339.91
## HNXMH 6 224 1.60 0.49 2.00 1.63 0.00 1.00 2.00
## range skew kurtosis se
## VCB 22000.00 1.54 2.35 272.67
## VCBMH 0.00 NaN NaN 0.00
## VN30 355.71 -0.28 -0.40 4.86
## VN30MH 1.00 -1.20 -0.56 0.03
## HNX 97.84 1.05 0.25 1.48
## HNXMH 1.00 -0.42 -1.83 0.03
#### NHẬN XÉT
#VCB: Giá trị trung bình là 60.752,86, cho thấy mức giá cổ phiếu VCB trung bình trong giai đoạn khảo sát.
#VN30: Giá trị trung bình là 1.954,72 điểm, phản ánh mức điểm trung bình của chỉ số VN30.
#HNX: Giá trị trung bình là 272,08 điểm, phản ánh mức điểm trung bình của chỉ số HNX.
#Ordinal Scale: VCBMH có mean = 2,00; VN30MH = 1,76; HNXMH = 1,60. Cả ba biến đều nghiêng về nhóm 2, trong đó VCBMH có toàn bộ quan sát thuộc nhóm 2.
## Thống kê table
table(VCBMH)
## VCBMH
## 2
## 224
table(VCBMH)/sum(table(VCBMH))
## VCBMH
## 2
## 1
table(VN30MH)
## VN30MH
## 1 2
## 54 170
table(VN30MH)/sum(table(VN30MH))
## VN30MH
## 1 2
## 0.2410714 0.7589286
table(HNXMH)
## HNXMH
## 1 2
## 89 135
table(HNXMH)/sum(table(HNXMH))
## HNXMH
## 1 2
## 0.3973214 0.6026786
#### NHẬN XÉT
# VCBMH có 224 quan sát thuộc nhóm 2, chiếm 100%.
# VN30MH có 54 quan sát nhóm 1 (24,11%) và 170 quan sát nhóm 2 (75,89%).
# HNXMH có 89 quan sát nhóm 1 (39,73%) và 135 quan sát nhóm 2 (60,27%).
# Như vậy, nhóm 2 chiếm tỷ lệ cao nhất ở cả ba biến, đặc biệt VCBMH có toàn bộ quan sát thuộc nhóm 2.
# CÂU D VẼ ĐỒ THỊ
### ĐỒ THỊ CỘT
VCB.freq=table(VCBMH)
barplot(VCB.freq,xlab="Nhóm VCB",ylab="Số lượng",main="Biểu đồ cột VCB",col=c("pink"))

VN30.freq=table(VN30MH)
barplot(VN30.freq,xlab="Nhóm VN30",ylab="Số lượng",main="Biểu đồ cột VN30",col=c("pink","red"))

HNX.freq=table(HNXMH)
barplot(HNX.freq,xlab="Nhóm HNX",ylab="Số lượng",main="Biểu đồ cột HNX",col=c("green","purple"))

#### NHẬN XÉT:
# VCB: Toàn bộ 224 quan sát thuộc nhóm 2, chiếm 100%; nhóm 1 không có quan sát.
# VN30: Nhóm 2 có 170 quan sát (75,89%), cao hơn nhóm 1 với 54 quan sát (24,11%). Điều này cho thấy nhóm 2 chiếm ưu thế.
# HNX: Nhóm 2 có 135 quan sát (60,27%), cao hơn nhóm 1 với 89 quan sát (39,73%). Chênh lệch giữa hai nhóm không quá lớn.
# Cả ba biểu đồ đều cho thấy nhóm 2 chiếm tỷ lệ cao nhất, đặc biệt ở VCB với 100% số quan sát.
### ĐỒ THỊ TRÒN
pie(table(VCBMH),col=c("pink","red"),sub="Đồ thị tỷ lệ VCB")

pie(table(VN30MH),col=c("purple","yellow"),sub="Đồ thị tỷ lệ VN30")

pie(table(HNXMH),col=c("darkgreen","lightpink"),sub="Đồ thị tỷ lệ HNX")

### ĐỒ THỊ ĐƯỜNG
VCB=as.numeric(gsub(",","",as.character(datadulieu$VCB)))
VN30=as.numeric(gsub(",","",as.character(datadulieu$VN30)))
HNX=as.numeric(gsub(",","",as.character(datadulieu$HNX)))
STT=1:length(VCB)
plot(STT, VCB, type="o",xlab="Số phiên", ylab="Giá trị VCB",pch=19, main="Giá trị VCB theo phiên")

STT=1:length(VN30)
plot(STT, VN30, type="o",xlab="Số phiên", ylab="Giá trị VN30",pch=19, main="Giá trị VN30 theo phiên")

STT=1:length(HNX)
plot(STT, HNX, type="o",xlab="Số phiên", ylab="Giá trị HNX",pch=19, main="Giá trị HNX theo phiên")

#### NHẬN XÉT:
# Biểu đồ đường VCB: Giá trị VCB biến động khá mạnh, chủ yếu tập trung quanh mức 58.000–65.000. Một số phiên tăng cao lên khoảng 75.000–76.000, trong khi một số phiên giảm xuống gần 54.000. Nhìn chung, giá VCB dao động không ổn định.
# Biểu đồ đường VN30: Chỉ số VN30 dao động chủ yếu trong khoảng 1.900–2.050 điểm. Có một số phiên tăng lên trên 2.050 điểm và giảm xuống dưới 1.800 điểm. Nhìn chung, VN30 biến động qua các phiên nhưng không thể hiện xu hướng tăng hoặc giảm liên tục.
# Biểu đồ đường HNX: Chỉ số HNX chủ yếu dao động quanh mức 250–280 điểm, có một số phiên tăng cao lên trên 330 điểm. Biên độ biến động tương đối lớn giữa các phiên, cho thấy chỉ số HNX có những thời điểm tăng giảm đáng kể.
# Kết luận: Cả ba chỉ số đều biến động theo thời gian. VCB có những mức giá tăng vọt rõ rệt, VN30 dao động quanh vùng 1.900–2.050 điểm, còn HNX xuất hiện nhiều phiên tăng đột biến so với mức giá thông thường.
# CÂU E PHÂN TÍCH TƯƠNG QUAN VÀ VẼ ĐỒ THỊ TƯƠNG QUAN
### PHÂN TÍCH
library(psych)
vars=cbind(VCB,VN30,HNX)
pairs.panels(vars)

library(Hmisc)
##
## Attaching package: 'Hmisc'
## The following object is masked from 'package:psych':
##
## describe
## The following objects are masked from 'package:base':
##
## format.pval, units
result=rcorr(as.matrix(vars),type="pearson")
result$r
## VCB VN30 HNX
## VCB 1.00000000 0.63147149 -0.05476116
## VN30 0.63147149 1.00000000 0.05469029
## HNX -0.05476116 0.05469029 1.00000000
result$P
## VCB VN30 HNX
## VCB NA 0.0000000 0.4147193
## VN30 0.0000000 NA 0.4153244
## HNX 0.4147193 0.4153244 NA
#### NHẬN XÉT:
# Hệ số tương quan Pearson giữa VN30 và HNX là 0,0547,
# cho thấy hai chỉ số có mối tương quan thuận rất yếu, gần như không có mối quan hệ tuyến tính. Điều này có nghĩa là khi VN30 tăng hoặc giảm
# HNX không nhất thiết biến động cùng chiều một cách rõ ràng.
# Giá trị p-value = 0,4153 > 0,05, nên mối tương quan giữa hai chỉ số không có ý nghĩa thống kê ở mức ý nghĩa 5%.
# Biểu đồ phân tán cho thấy các điểm dữ liệu phân bố khá rộng, không tập trung sát một đường thẳng, phù hợp với hệ số tương quan rất thấp. Nhìn chung, chưa có đủ bằng chứng để kết luận rằng VN30 và HNX có mối tương quan tuyến tính đáng kể trong giai đoạn khảo sát.
# CÂU F THỰC HIỆN MÔ HÌNH HỒI QUY TUYẾN TÍNH
mreg=lm(VCB~VN30+HNX)
summary(mreg)
##
## Call:
## lm(formula = VCB ~ VN30 + HNX)
##
## Residuals:
## Min 1Q Median 3Q Max
## -6702.2 -1971.8 -144.5 1484.8 10161.7
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4503.079 6122.511 -0.735 0.4628
## VN30 35.674 2.909 12.264 <2e-16 ***
## HNX -16.451 9.531 -1.726 0.0857 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3157 on 221 degrees of freedom
## Multiple R-squared: 0.4068, Adjusted R-squared: 0.4014
## F-statistic: 75.76 on 2 and 221 DF, p-value: < 2.2e-16
#### NHẬN XÉT:
# Mô hình hồi quy có \(R^2 = 0,4068\), nghĩa là VN30 và HNX giải thích được khoảng 40,68% sự biến động của biến phụ thuộc; 59,32% còn lại do các yếu tố khác. Giá trị kiểm định F = 75,76 với p-value < 2,2e-16 cho thấy mô hình hồi quy có ý nghĩa thống kê tổng thể.
# VN30: Hệ số hồi quy là 35,674 và p-value < 0,001, cho thấy VN30 có tác động thuận chiều và có ý nghĩa thống kê đến biến phụ thuộc.
# HNX: Hệ số hồi quy là -16,451 và p-value = 0,0857 > 0,05, cho thấy HNX có tác động ngược chiều nhưng chưa có ý nghĩa thống kê ở mức 5%.
# Hệ số chặn: Bằng -4503,079 với p-value = 0,4628 > 0,05, nên không có ý nghĩa thống kê
# Kết luận: Mô hình hồi quy có ý nghĩa thống kê tổng thể và khả năng giải thích ở mức 40,68%. Trong hai biến độc lập, VN30 có ảnh hưởng thuận chiều và có ý nghĩa thống kê, còn HNX chưa có đủ bằng chứng về ảnh hưởng có ý nghĩa thống kê ở mức 5%.
# CÂU G THỰC HIỆN KIỂM ĐỊNH SAU MÔ HÌNH HỒI QUY TUYẾN TÍNH
## KIỂM ĐỊNH ĐA CỘNG TUYẾN VF TỰ TƯƠNG QUAN
mreg=lm(VCB~HNX+VN30)
summary(mreg)
##
## Call:
## lm(formula = VCB ~ HNX + VN30)
##
## Residuals:
## Min 1Q Median 3Q Max
## -6702.2 -1971.8 -144.5 1484.8 10161.7
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4503.079 6122.511 -0.735 0.4628
## HNX -16.451 9.531 -1.726 0.0857 .
## VN30 35.674 2.909 12.264 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3157 on 221 degrees of freedom
## Multiple R-squared: 0.4068, Adjusted R-squared: 0.4014
## F-statistic: 75.76 on 2 and 221 DF, p-value: < 2.2e-16
library(car)
## Loading required package: carData
##
## Attaching package: 'car'
## The following object is masked from 'package:psych':
##
## logit
vif(mreg)
## HNX VN30
## 1.003 1.003
require(lmtest)
## Loading required package: lmtest
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
dwtest(mreg)
##
## Durbin-Watson test
##
## data: mreg
## DW = 2.2153, p-value = 0.9464
## alternative hypothesis: true autocorrelation is greater than 0
#### NHẬN XÉT
# Đa cộng tuyến: Hệ số VIF của VN30 là 1,003 và HNX là 1,003, đều gần bằng 1 và nhỏ hơn 5. Vì vậy, mô hình không có dấu hiệu đa cộng tuyến nghiêm trọng giữa các biến độc lập.
# Tự tương quan: Kiểm định Durbin–Watson cho kết quả DW = 2,2153, gần bằng 2; p-value = 0,9464 > 0,05. Do đó, không có đủ bằng chứng thống kê để kết luận tồn tại tự tương quan dương giữa các sai số.
# Kết luận: Mô hình không có dấu hiệu đa cộng tuyến nghiêm trọng và kiểm định chưa phát hiện tự tương quan dương của sai số ở mức ý nghĩa 5%.
## KIỂM ĐỊNH CÁC GIẢ THUYẾT CỦA MÔ HÌNH THÔNG QUA ĐỒ THỊ PHẦN DƯ VÀ PHẦN DƯ CHUẨN HÓA
mreg=lm(VCB~HNX+VN30)
summary(mreg)
##
## Call:
## lm(formula = VCB ~ HNX + VN30)
##
## Residuals:
## Min 1Q Median 3Q Max
## -6702.2 -1971.8 -144.5 1484.8 10161.7
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4503.079 6122.511 -0.735 0.4628
## HNX -16.451 9.531 -1.726 0.0857 .
## VN30 35.674 2.909 12.264 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3157 on 221 degrees of freedom
## Multiple R-squared: 0.4068, Adjusted R-squared: 0.4014
## F-statistic: 75.76 on 2 and 221 DF, p-value: < 2.2e-16
op=par(mfrow=c(2,2))
plot(mreg)

#### NHẬN XÉT
# Residuals vs Fitted: Phần dư phân bố quanh đường 0 nhưng có dấu hiệu phân tán không đồng đều, cho thấy có thể tồn tại hiện tượng phương sai sai số thay đổi.
# Q-Q Residuals: Các điểm ở hai đầu không hoàn toàn nằm trên đường thẳng, cho thấy phần dư có thể chưa tuân theo phân phối chuẩn hoàn toàn.
# Scale-Location: Độ phân tán của phần dư có xu hướng thay đổi theo giá trị dự đoán, gợi ý khả năng phương sai sai số không đồng nhất.
# Residuals vs Leverage: Một số quan sát có leverage tương đối cao, cần kiểm tra thêm để xác định liệu chúng có ảnh hưởng đáng kể đến mô hình hay không.
# Kết luận: Mô hình hồi quy có ý nghĩa thống kê tổng thể, nhưng các biểu đồ chẩn đoán cho thấy có thể tồn tại vấn đề về phương sai sai số và phân phối chuẩn của phần dư. Vì vậy, cần kiểm tra thêm các giả định hồi quy trước khi đưa ra kết luận cuối cùng.