data <- read.csv("heart.csv")
data
## age sex cp trestbps chol fbs restecg thalach exang oldpeak slope ca thal
## 1 63 1 3 145 233 1 0 150 0 2.3 0 0 1
## 2 37 1 2 130 250 0 1 187 0 3.5 0 0 2
## 3 41 0 1 130 204 0 0 172 0 1.4 2 0 2
## 4 56 1 1 120 236 0 1 178 0 0.8 2 0 2
## 5 57 0 0 120 354 0 1 163 1 0.6 2 0 2
## 6 57 1 0 140 192 0 1 148 0 0.4 1 0 1
## 7 56 0 1 140 294 0 0 153 0 1.3 1 0 2
## 8 44 1 1 120 263 0 1 173 0 0.0 2 0 3
## 9 52 1 2 172 199 1 1 162 0 0.5 2 0 3
## 10 57 1 2 150 168 0 1 174 0 1.6 2 0 2
## 11 54 1 0 140 239 0 1 160 0 1.2 2 0 2
## 12 48 0 2 130 275 0 1 139 0 0.2 2 0 2
## 13 49 1 1 130 266 0 1 171 0 0.6 2 0 2
## 14 64 1 3 110 211 0 0 144 1 1.8 1 0 2
## 15 58 0 3 150 283 1 0 162 0 1.0 2 0 2
## 16 50 0 2 120 219 0 1 158 0 1.6 1 0 2
## 17 58 0 2 120 340 0 1 172 0 0.0 2 0 2
## 18 66 0 3 150 226 0 1 114 0 2.6 0 0 2
## 19 43 1 0 150 247 0 1 171 0 1.5 2 0 2
## 20 69 0 3 140 239 0 1 151 0 1.8 2 2 2
## 21 59 1 0 135 234 0 1 161 0 0.5 1 0 3
## 22 44 1 2 130 233 0 1 179 1 0.4 2 0 2
## 23 42 1 0 140 226 0 1 178 0 0.0 2 0 2
## 24 61 1 2 150 243 1 1 137 1 1.0 1 0 2
## 25 40 1 3 140 199 0 1 178 1 1.4 2 0 3
## 26 71 0 1 160 302 0 1 162 0 0.4 2 2 2
## 27 59 1 2 150 212 1 1 157 0 1.6 2 0 2
## 28 51 1 2 110 175 0 1 123 0 0.6 2 0 2
## 29 65 0 2 140 417 1 0 157 0 0.8 2 1 2
## 30 53 1 2 130 197 1 0 152 0 1.2 0 0 2
## 31 41 0 1 105 198 0 1 168 0 0.0 2 1 2
## 32 65 1 0 120 177 0 1 140 0 0.4 2 0 3
## 33 44 1 1 130 219 0 0 188 0 0.0 2 0 2
## 34 54 1 2 125 273 0 0 152 0 0.5 0 1 2
## 35 51 1 3 125 213 0 0 125 1 1.4 2 1 2
## 36 46 0 2 142 177 0 0 160 1 1.4 0 0 2
## 37 54 0 2 135 304 1 1 170 0 0.0 2 0 2
## 38 54 1 2 150 232 0 0 165 0 1.6 2 0 3
## 39 65 0 2 155 269 0 1 148 0 0.8 2 0 2
## 40 65 0 2 160 360 0 0 151 0 0.8 2 0 2
## 41 51 0 2 140 308 0 0 142 0 1.5 2 1 2
## 42 48 1 1 130 245 0 0 180 0 0.2 1 0 2
## 43 45 1 0 104 208 0 0 148 1 3.0 1 0 2
## 44 53 0 0 130 264 0 0 143 0 0.4 1 0 2
## 45 39 1 2 140 321 0 0 182 0 0.0 2 0 2
## 46 52 1 1 120 325 0 1 172 0 0.2 2 0 2
## 47 44 1 2 140 235 0 0 180 0 0.0 2 0 2
## 48 47 1 2 138 257 0 0 156 0 0.0 2 0 2
## 49 53 0 2 128 216 0 0 115 0 0.0 2 0 0
## 50 53 0 0 138 234 0 0 160 0 0.0 2 0 2
## 51 51 0 2 130 256 0 0 149 0 0.5 2 0 2
## 52 66 1 0 120 302 0 0 151 0 0.4 1 0 2
## 53 62 1 2 130 231 0 1 146 0 1.8 1 3 3
## 54 44 0 2 108 141 0 1 175 0 0.6 1 0 2
## 55 63 0 2 135 252 0 0 172 0 0.0 2 0 2
## 56 52 1 1 134 201 0 1 158 0 0.8 2 1 2
## 57 48 1 0 122 222 0 0 186 0 0.0 2 0 2
## 58 45 1 0 115 260 0 0 185 0 0.0 2 0 2
## 59 34 1 3 118 182 0 0 174 0 0.0 2 0 2
## 60 57 0 0 128 303 0 0 159 0 0.0 2 1 2
## 61 71 0 2 110 265 1 0 130 0 0.0 2 1 2
## 62 54 1 1 108 309 0 1 156 0 0.0 2 0 3
## 63 52 1 3 118 186 0 0 190 0 0.0 1 0 1
## 64 41 1 1 135 203 0 1 132 0 0.0 1 0 1
## 65 58 1 2 140 211 1 0 165 0 0.0 2 0 2
## 66 35 0 0 138 183 0 1 182 0 1.4 2 0 2
## 67 51 1 2 100 222 0 1 143 1 1.2 1 0 2
## 68 45 0 1 130 234 0 0 175 0 0.6 1 0 2
## 69 44 1 1 120 220 0 1 170 0 0.0 2 0 2
## 70 62 0 0 124 209 0 1 163 0 0.0 2 0 2
## 71 54 1 2 120 258 0 0 147 0 0.4 1 0 3
## 72 51 1 2 94 227 0 1 154 1 0.0 2 1 3
## 73 29 1 1 130 204 0 0 202 0 0.0 2 0 2
## 74 51 1 0 140 261 0 0 186 1 0.0 2 0 2
## 75 43 0 2 122 213 0 1 165 0 0.2 1 0 2
## 76 55 0 1 135 250 0 0 161 0 1.4 1 0 2
## 77 51 1 2 125 245 1 0 166 0 2.4 1 0 2
## 78 59 1 1 140 221 0 1 164 1 0.0 2 0 2
## 79 52 1 1 128 205 1 1 184 0 0.0 2 0 2
## 80 58 1 2 105 240 0 0 154 1 0.6 1 0 3
## 81 41 1 2 112 250 0 1 179 0 0.0 2 0 2
## 82 45 1 1 128 308 0 0 170 0 0.0 2 0 2
## 83 60 0 2 102 318 0 1 160 0 0.0 2 1 2
## 84 52 1 3 152 298 1 1 178 0 1.2 1 0 3
## 85 42 0 0 102 265 0 0 122 0 0.6 1 0 2
## 86 67 0 2 115 564 0 0 160 0 1.6 1 0 3
## 87 68 1 2 118 277 0 1 151 0 1.0 2 1 3
## 88 46 1 1 101 197 1 1 156 0 0.0 2 0 3
## 89 54 0 2 110 214 0 1 158 0 1.6 1 0 2
## 90 58 0 0 100 248 0 0 122 0 1.0 1 0 2
## 91 48 1 2 124 255 1 1 175 0 0.0 2 2 2
## 92 57 1 0 132 207 0 1 168 1 0.0 2 0 3
## 93 52 1 2 138 223 0 1 169 0 0.0 2 4 2
## 94 54 0 1 132 288 1 0 159 1 0.0 2 1 2
## 95 45 0 1 112 160 0 1 138 0 0.0 1 0 2
## 96 53 1 0 142 226 0 0 111 1 0.0 2 0 3
## 97 62 0 0 140 394 0 0 157 0 1.2 1 0 2
## 98 52 1 0 108 233 1 1 147 0 0.1 2 3 3
## 99 43 1 2 130 315 0 1 162 0 1.9 2 1 2
## 100 53 1 2 130 246 1 0 173 0 0.0 2 3 2
## 101 42 1 3 148 244 0 0 178 0 0.8 2 2 2
## 102 59 1 3 178 270 0 0 145 0 4.2 0 0 3
## 103 63 0 1 140 195 0 1 179 0 0.0 2 2 2
## 104 42 1 2 120 240 1 1 194 0 0.8 0 0 3
## 105 50 1 2 129 196 0 1 163 0 0.0 2 0 2
## 106 68 0 2 120 211 0 0 115 0 1.5 1 0 2
## 107 69 1 3 160 234 1 0 131 0 0.1 1 1 2
## 108 45 0 0 138 236 0 0 152 1 0.2 1 0 2
## 109 50 0 1 120 244 0 1 162 0 1.1 2 0 2
## 110 50 0 0 110 254 0 0 159 0 0.0 2 0 2
## 111 64 0 0 180 325 0 1 154 1 0.0 2 0 2
## 112 57 1 2 150 126 1 1 173 0 0.2 2 1 3
## 113 64 0 2 140 313 0 1 133 0 0.2 2 0 3
## 114 43 1 0 110 211 0 1 161 0 0.0 2 0 3
## 115 55 1 1 130 262 0 1 155 0 0.0 2 0 2
## 116 37 0 2 120 215 0 1 170 0 0.0 2 0 2
## 117 41 1 2 130 214 0 0 168 0 2.0 1 0 2
## 118 56 1 3 120 193 0 0 162 0 1.9 1 0 3
## 119 46 0 1 105 204 0 1 172 0 0.0 2 0 2
## 120 46 0 0 138 243 0 0 152 1 0.0 1 0 2
## 121 64 0 0 130 303 0 1 122 0 2.0 1 2 2
## 122 59 1 0 138 271 0 0 182 0 0.0 2 0 2
## 123 41 0 2 112 268 0 0 172 1 0.0 2 0 2
## 124 54 0 2 108 267 0 0 167 0 0.0 2 0 2
## 125 39 0 2 94 199 0 1 179 0 0.0 2 0 2
## 126 34 0 1 118 210 0 1 192 0 0.7 2 0 2
## 127 47 1 0 112 204 0 1 143 0 0.1 2 0 2
## 128 67 0 2 152 277 0 1 172 0 0.0 2 1 2
## 129 52 0 2 136 196 0 0 169 0 0.1 1 0 2
## 130 74 0 1 120 269 0 0 121 1 0.2 2 1 2
## 131 54 0 2 160 201 0 1 163 0 0.0 2 1 2
## 132 49 0 1 134 271 0 1 162 0 0.0 1 0 2
## 133 42 1 1 120 295 0 1 162 0 0.0 2 0 2
## 134 41 1 1 110 235 0 1 153 0 0.0 2 0 2
## 135 41 0 1 126 306 0 1 163 0 0.0 2 0 2
## 136 49 0 0 130 269 0 1 163 0 0.0 2 0 2
## 137 60 0 2 120 178 1 1 96 0 0.0 2 0 2
## 138 62 1 1 128 208 1 0 140 0 0.0 2 0 2
## 139 57 1 0 110 201 0 1 126 1 1.5 1 0 1
## 140 64 1 0 128 263 0 1 105 1 0.2 1 1 3
## 141 51 0 2 120 295 0 0 157 0 0.6 2 0 2
## 142 43 1 0 115 303 0 1 181 0 1.2 1 0 2
## 143 42 0 2 120 209 0 1 173 0 0.0 1 0 2
## 144 67 0 0 106 223 0 1 142 0 0.3 2 2 2
## 145 76 0 2 140 197 0 2 116 0 1.1 1 0 2
## 146 70 1 1 156 245 0 0 143 0 0.0 2 0 2
## 147 44 0 2 118 242 0 1 149 0 0.3 1 1 2
## 148 60 0 3 150 240 0 1 171 0 0.9 2 0 2
## 149 44 1 2 120 226 0 1 169 0 0.0 2 0 2
## 150 42 1 2 130 180 0 1 150 0 0.0 2 0 2
## 151 66 1 0 160 228 0 0 138 0 2.3 2 0 1
## 152 71 0 0 112 149 0 1 125 0 1.6 1 0 2
## 153 64 1 3 170 227 0 0 155 0 0.6 1 0 3
## 154 66 0 2 146 278 0 0 152 0 0.0 1 1 2
## 155 39 0 2 138 220 0 1 152 0 0.0 1 0 2
## 156 58 0 0 130 197 0 1 131 0 0.6 1 0 2
## 157 47 1 2 130 253 0 1 179 0 0.0 2 0 2
## 158 35 1 1 122 192 0 1 174 0 0.0 2 0 2
## 159 58 1 1 125 220 0 1 144 0 0.4 1 4 3
## 160 56 1 1 130 221 0 0 163 0 0.0 2 0 3
## 161 56 1 1 120 240 0 1 169 0 0.0 0 0 2
## 162 55 0 1 132 342 0 1 166 0 1.2 2 0 2
## 163 41 1 1 120 157 0 1 182 0 0.0 2 0 2
## 164 38 1 2 138 175 0 1 173 0 0.0 2 4 2
## 165 38 1 2 138 175 0 1 173 0 0.0 2 4 2
## 166 67 1 0 160 286 0 0 108 1 1.5 1 3 2
## 167 67 1 0 120 229 0 0 129 1 2.6 1 2 3
## 168 62 0 0 140 268 0 0 160 0 3.6 0 2 2
## 169 63 1 0 130 254 0 0 147 0 1.4 1 1 3
## 170 53 1 0 140 203 1 0 155 1 3.1 0 0 3
## 171 56 1 2 130 256 1 0 142 1 0.6 1 1 1
## 172 48 1 1 110 229 0 1 168 0 1.0 0 0 3
## 173 58 1 1 120 284 0 0 160 0 1.8 1 0 2
## 174 58 1 2 132 224 0 0 173 0 3.2 2 2 3
## 175 60 1 0 130 206 0 0 132 1 2.4 1 2 3
## 176 40 1 0 110 167 0 0 114 1 2.0 1 0 3
## 177 60 1 0 117 230 1 1 160 1 1.4 2 2 3
## 178 64 1 2 140 335 0 1 158 0 0.0 2 0 2
## 179 43 1 0 120 177 0 0 120 1 2.5 1 0 3
## 180 57 1 0 150 276 0 0 112 1 0.6 1 1 1
## 181 55 1 0 132 353 0 1 132 1 1.2 1 1 3
## 182 65 0 0 150 225 0 0 114 0 1.0 1 3 3
## 183 61 0 0 130 330 0 0 169 0 0.0 2 0 2
## 184 58 1 2 112 230 0 0 165 0 2.5 1 1 3
## 185 50 1 0 150 243 0 0 128 0 2.6 1 0 3
## 186 44 1 0 112 290 0 0 153 0 0.0 2 1 2
## 187 60 1 0 130 253 0 1 144 1 1.4 2 1 3
## 188 54 1 0 124 266 0 0 109 1 2.2 1 1 3
## 189 50 1 2 140 233 0 1 163 0 0.6 1 1 3
## 190 41 1 0 110 172 0 0 158 0 0.0 2 0 3
## 191 51 0 0 130 305 0 1 142 1 1.2 1 0 3
## 192 58 1 0 128 216 0 0 131 1 2.2 1 3 3
## 193 54 1 0 120 188 0 1 113 0 1.4 1 1 3
## 194 60 1 0 145 282 0 0 142 1 2.8 1 2 3
## 195 60 1 2 140 185 0 0 155 0 3.0 1 0 2
## 196 59 1 0 170 326 0 0 140 1 3.4 0 0 3
## 197 46 1 2 150 231 0 1 147 0 3.6 1 0 2
## 198 67 1 0 125 254 1 1 163 0 0.2 1 2 3
## 199 62 1 0 120 267 0 1 99 1 1.8 1 2 3
## 200 65 1 0 110 248 0 0 158 0 0.6 2 2 1
## 201 44 1 0 110 197 0 0 177 0 0.0 2 1 2
## 202 60 1 0 125 258 0 0 141 1 2.8 1 1 3
## 203 58 1 0 150 270 0 0 111 1 0.8 2 0 3
## 204 68 1 2 180 274 1 0 150 1 1.6 1 0 3
## 205 62 0 0 160 164 0 0 145 0 6.2 0 3 3
## 206 52 1 0 128 255 0 1 161 1 0.0 2 1 3
## 207 59 1 0 110 239 0 0 142 1 1.2 1 1 3
## 208 60 0 0 150 258 0 0 157 0 2.6 1 2 3
## 209 49 1 2 120 188 0 1 139 0 2.0 1 3 3
## 210 59 1 0 140 177 0 1 162 1 0.0 2 1 3
## 211 57 1 2 128 229 0 0 150 0 0.4 1 1 3
## 212 61 1 0 120 260 0 1 140 1 3.6 1 1 3
## 213 39 1 0 118 219 0 1 140 0 1.2 1 0 3
## 214 61 0 0 145 307 0 0 146 1 1.0 1 0 3
## 215 56 1 0 125 249 1 0 144 1 1.2 1 1 2
## 216 43 0 0 132 341 1 0 136 1 3.0 1 0 3
## 217 62 0 2 130 263 0 1 97 0 1.2 1 1 3
## 218 63 1 0 130 330 1 0 132 1 1.8 2 3 3
## 219 65 1 0 135 254 0 0 127 0 2.8 1 1 3
## 220 48 1 0 130 256 1 0 150 1 0.0 2 2 3
## 221 63 0 0 150 407 0 0 154 0 4.0 1 3 3
## 222 55 1 0 140 217 0 1 111 1 5.6 0 0 3
## 223 65 1 3 138 282 1 0 174 0 1.4 1 1 2
## 224 56 0 0 200 288 1 0 133 1 4.0 0 2 3
## 225 54 1 0 110 239 0 1 126 1 2.8 1 1 3
## 226 70 1 0 145 174 0 1 125 1 2.6 0 0 3
## 227 62 1 1 120 281 0 0 103 0 1.4 1 1 3
## 228 35 1 0 120 198 0 1 130 1 1.6 1 0 3
## 229 59 1 3 170 288 0 0 159 0 0.2 1 0 3
## 230 64 1 2 125 309 0 1 131 1 1.8 1 0 3
## 231 47 1 2 108 243 0 1 152 0 0.0 2 0 2
## 232 57 1 0 165 289 1 0 124 0 1.0 1 3 3
## 233 55 1 0 160 289 0 0 145 1 0.8 1 1 3
## 234 64 1 0 120 246 0 0 96 1 2.2 0 1 2
## 235 70 1 0 130 322 0 0 109 0 2.4 1 3 2
## 236 51 1 0 140 299 0 1 173 1 1.6 2 0 3
## 237 58 1 0 125 300 0 0 171 0 0.0 2 2 3
## 238 60 1 0 140 293 0 0 170 0 1.2 1 2 3
## 239 77 1 0 125 304 0 0 162 1 0.0 2 3 2
## 240 35 1 0 126 282 0 0 156 1 0.0 2 0 3
## 241 70 1 2 160 269 0 1 112 1 2.9 1 1 3
## 242 59 0 0 174 249 0 1 143 1 0.0 1 0 2
## 243 64 1 0 145 212 0 0 132 0 2.0 1 2 1
## 244 57 1 0 152 274 0 1 88 1 1.2 1 1 3
## 245 56 1 0 132 184 0 0 105 1 2.1 1 1 1
## 246 48 1 0 124 274 0 0 166 0 0.5 1 0 3
## 247 56 0 0 134 409 0 0 150 1 1.9 1 2 3
## 248 66 1 1 160 246 0 1 120 1 0.0 1 3 1
## 249 54 1 1 192 283 0 0 195 0 0.0 2 1 3
## 250 69 1 2 140 254 0 0 146 0 2.0 1 3 3
## 251 51 1 0 140 298 0 1 122 1 4.2 1 3 3
## 252 43 1 0 132 247 1 0 143 1 0.1 1 4 3
## 253 62 0 0 138 294 1 1 106 0 1.9 1 3 2
## 254 67 1 0 100 299 0 0 125 1 0.9 1 2 2
## 255 59 1 3 160 273 0 0 125 0 0.0 2 0 2
## 256 45 1 0 142 309 0 0 147 1 0.0 1 3 3
## 257 58 1 0 128 259 0 0 130 1 3.0 1 2 3
## 258 50 1 0 144 200 0 0 126 1 0.9 1 0 3
## 259 62 0 0 150 244 0 1 154 1 1.4 1 0 2
## 260 38 1 3 120 231 0 1 182 1 3.8 1 0 3
## 261 66 0 0 178 228 1 1 165 1 1.0 1 2 3
## 262 52 1 0 112 230 0 1 160 0 0.0 2 1 2
## 263 53 1 0 123 282 0 1 95 1 2.0 1 2 3
## 264 63 0 0 108 269 0 1 169 1 1.8 1 2 2
## 265 54 1 0 110 206 0 0 108 1 0.0 1 1 2
## 266 66 1 0 112 212 0 0 132 1 0.1 2 1 2
## 267 55 0 0 180 327 0 2 117 1 3.4 1 0 2
## 268 49 1 2 118 149 0 0 126 0 0.8 2 3 2
## 269 54 1 0 122 286 0 0 116 1 3.2 1 2 2
## 270 56 1 0 130 283 1 0 103 1 1.6 0 0 3
## 271 46 1 0 120 249 0 0 144 0 0.8 2 0 3
## 272 61 1 3 134 234 0 1 145 0 2.6 1 2 2
## 273 67 1 0 120 237 0 1 71 0 1.0 1 0 2
## 274 58 1 0 100 234 0 1 156 0 0.1 2 1 3
## 275 47 1 0 110 275 0 0 118 1 1.0 1 1 2
## 276 52 1 0 125 212 0 1 168 0 1.0 2 2 3
## 277 58 1 0 146 218 0 1 105 0 2.0 1 1 3
## 278 57 1 1 124 261 0 1 141 0 0.3 2 0 3
## 279 58 0 1 136 319 1 0 152 0 0.0 2 2 2
## 280 61 1 0 138 166 0 0 125 1 3.6 1 1 2
## 281 42 1 0 136 315 0 1 125 1 1.8 1 0 1
## 282 52 1 0 128 204 1 1 156 1 1.0 1 0 0
## 283 59 1 2 126 218 1 1 134 0 2.2 1 1 1
## 284 40 1 0 152 223 0 1 181 0 0.0 2 0 3
## 285 61 1 0 140 207 0 0 138 1 1.9 2 1 3
## 286 46 1 0 140 311 0 1 120 1 1.8 1 2 3
## 287 59 1 3 134 204 0 1 162 0 0.8 2 2 2
## 288 57 1 1 154 232 0 0 164 0 0.0 2 1 2
## 289 57 1 0 110 335 0 1 143 1 3.0 1 1 3
## 290 55 0 0 128 205 0 2 130 1 2.0 1 1 3
## 291 61 1 0 148 203 0 1 161 0 0.0 2 1 3
## 292 58 1 0 114 318 0 2 140 0 4.4 0 3 1
## 293 58 0 0 170 225 1 0 146 1 2.8 1 2 1
## 294 67 1 2 152 212 0 0 150 0 0.8 1 0 3
## 295 44 1 0 120 169 0 1 144 1 2.8 0 0 1
## 296 63 1 0 140 187 0 0 144 1 4.0 2 2 3
## 297 63 0 0 124 197 0 1 136 1 0.0 1 0 2
## 298 59 1 0 164 176 1 0 90 0 1.0 1 2 1
## 299 57 0 0 140 241 0 1 123 1 0.2 1 0 3
## 300 45 1 3 110 264 0 1 132 0 1.2 1 0 3
## 301 68 1 0 144 193 1 1 141 0 3.4 1 2 3
## 302 57 1 0 130 131 0 1 115 1 1.2 1 1 3
## 303 57 0 1 130 236 0 0 174 0 0.0 1 1 2
## target
## 1 1
## 2 1
## 3 1
## 4 1
## 5 1
## 6 1
## 7 1
## 8 1
## 9 1
## 10 1
## 11 1
## 12 1
## 13 1
## 14 1
## 15 1
## 16 1
## 17 1
## 18 1
## 19 1
## 20 1
## 21 1
## 22 1
## 23 1
## 24 1
## 25 1
## 26 1
## 27 1
## 28 1
## 29 1
## 30 1
## 31 1
## 32 1
## 33 1
## 34 1
## 35 1
## 36 1
## 37 1
## 38 1
## 39 1
## 40 1
## 41 1
## 42 1
## 43 1
## 44 1
## 45 1
## 46 1
## 47 1
## 48 1
## 49 1
## 50 1
## 51 1
## 52 1
## 53 1
## 54 1
## 55 1
## 56 1
## 57 1
## 58 1
## 59 1
## 60 1
## 61 1
## 62 1
## 63 1
## 64 1
## 65 1
## 66 1
## 67 1
## 68 1
## 69 1
## 70 1
## 71 1
## 72 1
## 73 1
## 74 1
## 75 1
## 76 1
## 77 1
## 78 1
## 79 1
## 80 1
## 81 1
## 82 1
## 83 1
## 84 1
## 85 1
## 86 1
## 87 1
## 88 1
## 89 1
## 90 1
## 91 1
## 92 1
## 93 1
## 94 1
## 95 1
## 96 1
## 97 1
## 98 1
## 99 1
## 100 1
## 101 1
## 102 1
## 103 1
## 104 1
## 105 1
## 106 1
## 107 1
## 108 1
## 109 1
## 110 1
## 111 1
## 112 1
## 113 1
## 114 1
## 115 1
## 116 1
## 117 1
## 118 1
## 119 1
## 120 1
## 121 1
## 122 1
## 123 1
## 124 1
## 125 1
## 126 1
## 127 1
## 128 1
## 129 1
## 130 1
## 131 1
## 132 1
## 133 1
## 134 1
## 135 1
## 136 1
## 137 1
## 138 1
## 139 1
## 140 1
## 141 1
## 142 1
## 143 1
## 144 1
## 145 1
## 146 1
## 147 1
## 148 1
## 149 1
## 150 1
## 151 1
## 152 1
## 153 1
## 154 1
## 155 1
## 156 1
## 157 1
## 158 1
## 159 1
## 160 1
## 161 1
## 162 1
## 163 1
## 164 1
## 165 1
## 166 0
## 167 0
## 168 0
## 169 0
## 170 0
## 171 0
## 172 0
## 173 0
## 174 0
## 175 0
## 176 0
## 177 0
## 178 0
## 179 0
## 180 0
## 181 0
## 182 0
## 183 0
## 184 0
## 185 0
## 186 0
## 187 0
## 188 0
## 189 0
## 190 0
## 191 0
## 192 0
## 193 0
## 194 0
## 195 0
## 196 0
## 197 0
## 198 0
## 199 0
## 200 0
## 201 0
## 202 0
## 203 0
## 204 0
## 205 0
## 206 0
## 207 0
## 208 0
## 209 0
## 210 0
## 211 0
## 212 0
## 213 0
## 214 0
## 215 0
## 216 0
## 217 0
## 218 0
## 219 0
## 220 0
## 221 0
## 222 0
## 223 0
## 224 0
## 225 0
## 226 0
## 227 0
## 228 0
## 229 0
## 230 0
## 231 0
## 232 0
## 233 0
## 234 0
## 235 0
## 236 0
## 237 0
## 238 0
## 239 0
## 240 0
## 241 0
## 242 0
## 243 0
## 244 0
## 245 0
## 246 0
## 247 0
## 248 0
## 249 0
## 250 0
## 251 0
## 252 0
## 253 0
## 254 0
## 255 0
## 256 0
## 257 0
## 258 0
## 259 0
## 260 0
## 261 0
## 262 0
## 263 0
## 264 0
## 265 0
## 266 0
## 267 0
## 268 0
## 269 0
## 270 0
## 271 0
## 272 0
## 273 0
## 274 0
## 275 0
## 276 0
## 277 0
## 278 0
## 279 0
## 280 0
## 281 0
## 282 0
## 283 0
## 284 0
## 285 0
## 286 0
## 287 0
## 288 0
## 289 0
## 290 0
## 291 0
## 292 0
## 293 0
## 294 0
## 295 0
## 296 0
## 297 0
## 298 0
## 299 0
## 300 0
## 301 0
## 302 0
## 303 0
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
data <- data %>%
rename(
chest_pain_type = cp,
resting_blood_pressure = trestbps,
cholesterol = chol,
fasting_blood_sugar = fbs,
resting_electrocardiogram = restecg,
max_heart_rate_achieved = thalach,
exercise_induced_angina = exang,
st_depression = oldpeak,
st_slope = slope,
num_major_vessels = ca,
thalassemia = thal
)
str(data)
## 'data.frame': 303 obs. of 14 variables:
## $ age : int 63 37 41 56 57 57 56 44 52 57 ...
## $ sex : int 1 1 0 1 0 1 0 1 1 1 ...
## $ chest_pain_type : int 3 2 1 1 0 0 1 1 2 2 ...
## $ resting_blood_pressure : int 145 130 130 120 120 140 140 120 172 150 ...
## $ cholesterol : int 233 250 204 236 354 192 294 263 199 168 ...
## $ fasting_blood_sugar : int 1 0 0 0 0 0 0 0 1 0 ...
## $ resting_electrocardiogram: int 0 1 0 1 1 1 0 1 1 1 ...
## $ max_heart_rate_achieved : int 150 187 172 178 163 148 153 173 162 174 ...
## $ exercise_induced_angina : int 0 0 0 0 1 0 0 0 0 0 ...
## $ st_depression : num 2.3 3.5 1.4 0.8 0.6 0.4 1.3 0 0.5 1.6 ...
## $ st_slope : int 0 0 2 2 2 1 1 2 2 2 ...
## $ num_major_vessels : int 0 0 0 0 0 0 0 0 0 0 ...
## $ thalassemia : int 1 2 2 2 2 1 2 3 3 2 ...
## $ target : int 1 1 1 1 1 1 1 1 1 1 ...
df_model <- data[, c(
"resting_blood_pressure",
"cholesterol",
"target",
"sex",
"age",
"max_heart_rate_achieved"
)]
df_model$sex <- factor(df_model$sex,
levels = c(0,1),
labels = c("Female","Male"))
df_model$target <- factor(df_model$target,
levels = c(0,1),
labels = c("No Disease","Disease"))
str(df_model)
## 'data.frame': 303 obs. of 6 variables:
## $ resting_blood_pressure : int 145 130 130 120 120 140 140 120 172 150 ...
## $ cholesterol : int 233 250 204 236 354 192 294 263 199 168 ...
## $ target : Factor w/ 2 levels "No Disease","Disease": 2 2 2 2 2 2 2 2 2 2 ...
## $ sex : Factor w/ 2 levels "Female","Male": 2 2 1 2 1 2 1 2 2 2 ...
## $ age : int 63 37 41 56 57 57 56 44 52 57 ...
## $ max_heart_rate_achieved: int 150 187 172 178 163 148 153 173 162 174 ...
colSums(is.na(df_model))
## resting_blood_pressure cholesterol target
## 0 0 0
## sex age max_heart_rate_achieved
## 0 0 0
par(mfrow = c(1,2))
# Blood Pressure
plot(density(df_model$resting_blood_pressure),
main = "Blood Pressure",
xlab = "Blood Pressure",
col = "blue", lwd = 2)
polygon(density(df_model$resting_blood_pressure),
col = "lightblue")
# Cholesterol
plot(density(df_model$cholesterol),
main = "Cholesterol",
xlab = "Cholesterol",
col = "green", lwd = 2)
polygon(density(df_model$cholesterol),
col = "lightgreen")
par(mfrow = c(1,2))
boxplot(resting_blood_pressure ~ target, data=df_model,
main="Blood Pressure by Disease")
boxplot(cholesterol ~ target, data=df_model,
main="Cholesterol by Disease")
cor(df_model[, c(
"resting_blood_pressure",
"cholesterol",
"age",
"max_heart_rate_achieved"
)])
## resting_blood_pressure cholesterol age
## resting_blood_pressure 1.00000000 0.123174207 0.2793509
## cholesterol 0.12317421 1.000000000 0.2136780
## age 0.27935091 0.213677957 1.0000000
## max_heart_rate_achieved -0.04669773 -0.009939839 -0.3985219
## max_heart_rate_achieved
## resting_blood_pressure -0.046697728
## cholesterol -0.009939839
## age -0.398521938
## max_heart_rate_achieved 1.000000000
summary(df_model)
## resting_blood_pressure cholesterol target sex
## Min. : 94.0 Min. :126.0 No Disease:138 Female: 96
## 1st Qu.:120.0 1st Qu.:211.0 Disease :165 Male :207
## Median :130.0 Median :240.0
## Mean :131.6 Mean :246.3
## 3rd Qu.:140.0 3rd Qu.:274.5
## Max. :200.0 Max. :564.0
## age max_heart_rate_achieved
## Min. :29.00 Min. : 71.0
## 1st Qu.:47.50 1st Qu.:133.5
## Median :55.00 Median :153.0
## Mean :54.37 Mean :149.6
## 3rd Qu.:61.00 3rd Qu.:166.0
## Max. :77.00 Max. :202.0
table(df_model$target)
##
## No Disease Disease
## 138 165
table(df_model$sex)
##
## Female Male
## 96 207
library(MVN)
## Warning: package 'MVN' was built under R version 4.5.3
Y <- df_model[, c("resting_blood_pressure", "cholesterol")]
mvn(Y)
## $multivariate_normality
## Test Statistic p.value Method MVN
## 1 Henze-Zirkler 1.706 <0.001 asymptotic ✗ Not normal
##
## $univariate_normality
## Test Variable Statistic p.value Normality
## 1 Anderson-Darling resting_blood_pressure 2.572 <0.001 ✗ Not normal
## 2 Anderson-Darling cholesterol 1.726 <0.001 ✗ Not normal
##
## $descriptives
## Variable n Mean Std.Dev Median Min Max 25th 75th Skew
## 1 resting_blood_pressure 303 131.624 17.538 130 94 200 120 140.0 0.710
## 2 cholesterol 303 246.264 51.831 240 126 564 211 274.5 1.138
## Kurtosis
## 1 3.894
## 2 7.412
##
## $data
## resting_blood_pressure cholesterol
## 1 145 233
## 2 130 250
## 3 130 204
## 4 120 236
## 5 120 354
## 6 140 192
## 7 140 294
## 8 120 263
## 9 172 199
## 10 150 168
## 11 140 239
## 12 130 275
## 13 130 266
## 14 110 211
## 15 150 283
## 16 120 219
## 17 120 340
## 18 150 226
## 19 150 247
## 20 140 239
## 21 135 234
## 22 130 233
## 23 140 226
## 24 150 243
## 25 140 199
## 26 160 302
## 27 150 212
## 28 110 175
## 29 140 417
## 30 130 197
## 31 105 198
## 32 120 177
## 33 130 219
## 34 125 273
## 35 125 213
## 36 142 177
## 37 135 304
## 38 150 232
## 39 155 269
## 40 160 360
## 41 140 308
## 42 130 245
## 43 104 208
## 44 130 264
## 45 140 321
## 46 120 325
## 47 140 235
## 48 138 257
## 49 128 216
## 50 138 234
## 51 130 256
## 52 120 302
## 53 130 231
## 54 108 141
## 55 135 252
## 56 134 201
## 57 122 222
## 58 115 260
## 59 118 182
## 60 128 303
## 61 110 265
## 62 108 309
## 63 118 186
## 64 135 203
## 65 140 211
## 66 138 183
## 67 100 222
## 68 130 234
## 69 120 220
## 70 124 209
## 71 120 258
## 72 94 227
## 73 130 204
## 74 140 261
## 75 122 213
## 76 135 250
## 77 125 245
## 78 140 221
## 79 128 205
## 80 105 240
## 81 112 250
## 82 128 308
## 83 102 318
## 84 152 298
## 85 102 265
## 86 115 564
## 87 118 277
## 88 101 197
## 89 110 214
## 90 100 248
## 91 124 255
## 92 132 207
## 93 138 223
## 94 132 288
## 95 112 160
## 96 142 226
## 97 140 394
## 98 108 233
## 99 130 315
## 100 130 246
## 101 148 244
## 102 178 270
## 103 140 195
## 104 120 240
## 105 129 196
## 106 120 211
## 107 160 234
## 108 138 236
## 109 120 244
## 110 110 254
## 111 180 325
## 112 150 126
## 113 140 313
## 114 110 211
## 115 130 262
## 116 120 215
## 117 130 214
## 118 120 193
## 119 105 204
## 120 138 243
## 121 130 303
## 122 138 271
## 123 112 268
## 124 108 267
## 125 94 199
## 126 118 210
## 127 112 204
## 128 152 277
## 129 136 196
## 130 120 269
## 131 160 201
## 132 134 271
## 133 120 295
## 134 110 235
## 135 126 306
## 136 130 269
## 137 120 178
## 138 128 208
## 139 110 201
## 140 128 263
## 141 120 295
## 142 115 303
## 143 120 209
## 144 106 223
## 145 140 197
## 146 156 245
## 147 118 242
## 148 150 240
## 149 120 226
## 150 130 180
## 151 160 228
## 152 112 149
## 153 170 227
## 154 146 278
## 155 138 220
## 156 130 197
## 157 130 253
## 158 122 192
## 159 125 220
## 160 130 221
## 161 120 240
## 162 132 342
## 163 120 157
## 164 138 175
## 165 138 175
## 166 160 286
## 167 120 229
## 168 140 268
## 169 130 254
## 170 140 203
## 171 130 256
## 172 110 229
## 173 120 284
## 174 132 224
## 175 130 206
## 176 110 167
## 177 117 230
## 178 140 335
## 179 120 177
## 180 150 276
## 181 132 353
## 182 150 225
## 183 130 330
## 184 112 230
## 185 150 243
## 186 112 290
## 187 130 253
## 188 124 266
## 189 140 233
## 190 110 172
## 191 130 305
## 192 128 216
## 193 120 188
## 194 145 282
## 195 140 185
## 196 170 326
## 197 150 231
## 198 125 254
## 199 120 267
## 200 110 248
## 201 110 197
## 202 125 258
## 203 150 270
## 204 180 274
## 205 160 164
## 206 128 255
## 207 110 239
## 208 150 258
## 209 120 188
## 210 140 177
## 211 128 229
## 212 120 260
## 213 118 219
## 214 145 307
## 215 125 249
## 216 132 341
## 217 130 263
## 218 130 330
## 219 135 254
## 220 130 256
## 221 150 407
## 222 140 217
## 223 138 282
## 224 200 288
## 225 110 239
## 226 145 174
## 227 120 281
## 228 120 198
## 229 170 288
## 230 125 309
## 231 108 243
## 232 165 289
## 233 160 289
## 234 120 246
## 235 130 322
## 236 140 299
## 237 125 300
## 238 140 293
## 239 125 304
## 240 126 282
## 241 160 269
## 242 174 249
## 243 145 212
## 244 152 274
## 245 132 184
## 246 124 274
## 247 134 409
## 248 160 246
## 249 192 283
## 250 140 254
## 251 140 298
## 252 132 247
## 253 138 294
## 254 100 299
## 255 160 273
## 256 142 309
## 257 128 259
## 258 144 200
## 259 150 244
## 260 120 231
## 261 178 228
## 262 112 230
## 263 123 282
## 264 108 269
## 265 110 206
## 266 112 212
## 267 180 327
## 268 118 149
## 269 122 286
## 270 130 283
## 271 120 249
## 272 134 234
## 273 120 237
## 274 100 234
## 275 110 275
## 276 125 212
## 277 146 218
## 278 124 261
## 279 136 319
## 280 138 166
## 281 136 315
## 282 128 204
## 283 126 218
## 284 152 223
## 285 140 207
## 286 140 311
## 287 134 204
## 288 154 232
## 289 110 335
## 290 128 205
## 291 148 203
## 292 114 318
## 293 170 225
## 294 152 212
## 295 120 169
## 296 140 187
## 297 124 197
## 298 164 176
## 299 140 241
## 300 110 264
## 301 144 193
## 302 130 131
## 303 130 236
##
## $subset
## NULL
##
## $outlierMethod
## [1] "none"
##
## attr(,"class")
## [1] "mvn"
shapiro.test(df_model$resting_blood_pressure)
##
## Shapiro-Wilk normality test
##
## data: df_model$resting_blood_pressure
## W = 0.96592, p-value = 1.458e-06
shapiro.test(df_model$cholesterol)
##
## Shapiro-Wilk normality test
##
## data: df_model$cholesterol
## W = 0.94688, p-value = 5.365e-09
library(biotools)
## Warning: package 'biotools' was built under R version 4.5.3
## Loading required package: MASS
##
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
##
## select
## ---
## biotools version 4.3
Y <- df_model[, c("resting_blood_pressure", "cholesterol")]
group <- interaction(df_model$target, df_model$sex)
boxM(Y, group)
##
## Box's M-test for Homogeneity of Covariance Matrices
##
## data: Y
## Chi-Sq (approx.) = 34.985, df = 9, p-value = 5.995e-05
df_model$bp_log <- log(df_model$resting_blood_pressure)
df_model$chol_log <- log(df_model$cholesterol)
Y <- df_model[, c("bp_log", "chol_log")]
mvn(Y)
## $multivariate_normality
## Test Statistic p.value Method MVN
## 1 Henze-Zirkler 0.492 0.812 asymptotic ✓ Normal
##
## $univariate_normality
## Test Variable Statistic p.value Normality
## 1 Anderson-Darling bp_log 1.342 0.002 ✗ Not normal
## 2 Anderson-Darling chol_log 0.261 0.707 ✓ Normal
##
## $descriptives
## Variable n Mean Std.Dev Median Min Max 25th 75th Skew Kurtosis
## 1 bp_log 303 4.871 0.130 4.868 4.543 5.298 4.787 4.942 0.280 3.197
## 2 chol_log 303 5.486 0.204 5.481 4.836 6.335 5.352 5.615 0.086 3.890
##
## $data
## bp_log chol_log
## 1 4.976734 5.451038
## 2 4.867534 5.521461
## 3 4.867534 5.318120
## 4 4.787492 5.463832
## 5 4.787492 5.869297
## 6 4.941642 5.257495
## 7 4.941642 5.683580
## 8 4.787492 5.572154
## 9 5.147494 5.293305
## 10 5.010635 5.123964
## 11 4.941642 5.476464
## 12 4.867534 5.616771
## 13 4.867534 5.583496
## 14 4.700480 5.351858
## 15 5.010635 5.645447
## 16 4.787492 5.389072
## 17 4.787492 5.828946
## 18 5.010635 5.420535
## 19 5.010635 5.509388
## 20 4.941642 5.476464
## 21 4.905275 5.455321
## 22 4.867534 5.451038
## 23 4.941642 5.420535
## 24 5.010635 5.493061
## 25 4.941642 5.293305
## 26 5.075174 5.710427
## 27 5.010635 5.356586
## 28 4.700480 5.164786
## 29 4.941642 6.033086
## 30 4.867534 5.283204
## 31 4.653960 5.288267
## 32 4.787492 5.176150
## 33 4.867534 5.389072
## 34 4.828314 5.609472
## 35 4.828314 5.361292
## 36 4.955827 5.176150
## 37 4.905275 5.717028
## 38 5.010635 5.446737
## 39 5.043425 5.594711
## 40 5.075174 5.886104
## 41 4.941642 5.730100
## 42 4.867534 5.501258
## 43 4.644391 5.337538
## 44 4.867534 5.575949
## 45 4.941642 5.771441
## 46 4.787492 5.783825
## 47 4.941642 5.459586
## 48 4.927254 5.549076
## 49 4.852030 5.375278
## 50 4.927254 5.455321
## 51 4.867534 5.545177
## 52 4.787492 5.710427
## 53 4.867534 5.442418
## 54 4.682131 4.948760
## 55 4.905275 5.529429
## 56 4.897840 5.303305
## 57 4.804021 5.402677
## 58 4.744932 5.560682
## 59 4.770685 5.204007
## 60 4.852030 5.713733
## 61 4.700480 5.579730
## 62 4.682131 5.733341
## 63 4.770685 5.225747
## 64 4.905275 5.313206
## 65 4.941642 5.351858
## 66 4.927254 5.209486
## 67 4.605170 5.402677
## 68 4.867534 5.455321
## 69 4.787492 5.393628
## 70 4.820282 5.342334
## 71 4.787492 5.552960
## 72 4.543295 5.424950
## 73 4.867534 5.318120
## 74 4.941642 5.564520
## 75 4.804021 5.361292
## 76 4.905275 5.521461
## 77 4.828314 5.501258
## 78 4.941642 5.398163
## 79 4.852030 5.323010
## 80 4.653960 5.480639
## 81 4.718499 5.521461
## 82 4.852030 5.730100
## 83 4.624973 5.762051
## 84 5.023881 5.697093
## 85 4.624973 5.579730
## 86 4.744932 6.335054
## 87 4.770685 5.624018
## 88 4.615121 5.283204
## 89 4.700480 5.365976
## 90 4.605170 5.513429
## 91 4.820282 5.541264
## 92 4.882802 5.332719
## 93 4.927254 5.407172
## 94 4.882802 5.662960
## 95 4.718499 5.075174
## 96 4.955827 5.420535
## 97 4.941642 5.976351
## 98 4.682131 5.451038
## 99 4.867534 5.752573
## 100 4.867534 5.505332
## 101 4.997212 5.497168
## 102 5.181784 5.598422
## 103 4.941642 5.273000
## 104 4.787492 5.480639
## 105 4.859812 5.278115
## 106 4.787492 5.351858
## 107 5.075174 5.455321
## 108 4.927254 5.463832
## 109 4.787492 5.497168
## 110 4.700480 5.537334
## 111 5.192957 5.783825
## 112 5.010635 4.836282
## 113 4.941642 5.746203
## 114 4.700480 5.351858
## 115 4.867534 5.568345
## 116 4.787492 5.370638
## 117 4.867534 5.365976
## 118 4.787492 5.262690
## 119 4.653960 5.318120
## 120 4.927254 5.493061
## 121 4.867534 5.713733
## 122 4.927254 5.602119
## 123 4.718499 5.590987
## 124 4.682131 5.587249
## 125 4.543295 5.293305
## 126 4.770685 5.347108
## 127 4.718499 5.318120
## 128 5.023881 5.624018
## 129 4.912655 5.278115
## 130 4.787492 5.594711
## 131 5.075174 5.303305
## 132 4.897840 5.602119
## 133 4.787492 5.686975
## 134 4.700480 5.459586
## 135 4.836282 5.723585
## 136 4.867534 5.594711
## 137 4.787492 5.181784
## 138 4.852030 5.337538
## 139 4.700480 5.303305
## 140 4.852030 5.572154
## 141 4.787492 5.686975
## 142 4.744932 5.713733
## 143 4.787492 5.342334
## 144 4.663439 5.407172
## 145 4.941642 5.283204
## 146 5.049856 5.501258
## 147 4.770685 5.488938
## 148 5.010635 5.480639
## 149 4.787492 5.420535
## 150 4.867534 5.192957
## 151 5.075174 5.429346
## 152 4.718499 5.003946
## 153 5.135798 5.424950
## 154 4.983607 5.627621
## 155 4.927254 5.393628
## 156 4.867534 5.283204
## 157 4.867534 5.533389
## 158 4.804021 5.257495
## 159 4.828314 5.393628
## 160 4.867534 5.398163
## 161 4.787492 5.480639
## 162 4.882802 5.834811
## 163 4.787492 5.056246
## 164 4.927254 5.164786
## 165 4.927254 5.164786
## 166 5.075174 5.655992
## 167 4.787492 5.433722
## 168 4.941642 5.590987
## 169 4.867534 5.537334
## 170 4.941642 5.313206
## 171 4.867534 5.545177
## 172 4.700480 5.433722
## 173 4.787492 5.648974
## 174 4.882802 5.411646
## 175 4.867534 5.327876
## 176 4.700480 5.117994
## 177 4.762174 5.438079
## 178 4.941642 5.814131
## 179 4.787492 5.176150
## 180 5.010635 5.620401
## 181 4.882802 5.866468
## 182 5.010635 5.416100
## 183 4.867534 5.799093
## 184 4.718499 5.438079
## 185 5.010635 5.493061
## 186 4.718499 5.669881
## 187 4.867534 5.533389
## 188 4.820282 5.583496
## 189 4.941642 5.451038
## 190 4.700480 5.147494
## 191 4.867534 5.720312
## 192 4.852030 5.375278
## 193 4.787492 5.236442
## 194 4.976734 5.641907
## 195 4.941642 5.220356
## 196 5.135798 5.786897
## 197 5.010635 5.442418
## 198 4.828314 5.537334
## 199 4.787492 5.587249
## 200 4.700480 5.513429
## 201 4.700480 5.283204
## 202 4.828314 5.552960
## 203 5.010635 5.598422
## 204 5.192957 5.613128
## 205 5.075174 5.099866
## 206 4.852030 5.541264
## 207 4.700480 5.476464
## 208 5.010635 5.552960
## 209 4.787492 5.236442
## 210 4.941642 5.176150
## 211 4.852030 5.433722
## 212 4.787492 5.560682
## 213 4.770685 5.389072
## 214 4.976734 5.726848
## 215 4.828314 5.517453
## 216 4.882802 5.831882
## 217 4.867534 5.572154
## 218 4.867534 5.799093
## 219 4.905275 5.537334
## 220 4.867534 5.545177
## 221 5.010635 6.008813
## 222 4.941642 5.379897
## 223 4.927254 5.641907
## 224 5.298317 5.662960
## 225 4.700480 5.476464
## 226 4.976734 5.159055
## 227 4.787492 5.638355
## 228 4.787492 5.288267
## 229 5.135798 5.662960
## 230 4.828314 5.733341
## 231 4.682131 5.493061
## 232 5.105945 5.666427
## 233 5.075174 5.666427
## 234 4.787492 5.505332
## 235 4.867534 5.774552
## 236 4.941642 5.700444
## 237 4.828314 5.703782
## 238 4.941642 5.680173
## 239 4.828314 5.717028
## 240 4.836282 5.641907
## 241 5.075174 5.594711
## 242 5.159055 5.517453
## 243 4.976734 5.356586
## 244 5.023881 5.613128
## 245 4.882802 5.214936
## 246 4.820282 5.613128
## 247 4.897840 6.013715
## 248 5.075174 5.505332
## 249 5.257495 5.645447
## 250 4.941642 5.537334
## 251 4.941642 5.697093
## 252 4.882802 5.509388
## 253 4.927254 5.683580
## 254 4.605170 5.700444
## 255 5.075174 5.609472
## 256 4.955827 5.733341
## 257 4.852030 5.556828
## 258 4.969813 5.298317
## 259 5.010635 5.497168
## 260 4.787492 5.442418
## 261 5.181784 5.429346
## 262 4.718499 5.438079
## 263 4.812184 5.641907
## 264 4.682131 5.594711
## 265 4.700480 5.327876
## 266 4.718499 5.356586
## 267 5.192957 5.789960
## 268 4.770685 5.003946
## 269 4.804021 5.655992
## 270 4.867534 5.645447
## 271 4.787492 5.517453
## 272 4.897840 5.455321
## 273 4.787492 5.468060
## 274 4.605170 5.455321
## 275 4.700480 5.616771
## 276 4.828314 5.356586
## 277 4.983607 5.384495
## 278 4.820282 5.564520
## 279 4.912655 5.765191
## 280 4.927254 5.111988
## 281 4.912655 5.752573
## 282 4.852030 5.318120
## 283 4.836282 5.384495
## 284 5.023881 5.407172
## 285 4.941642 5.332719
## 286 4.941642 5.739793
## 287 4.897840 5.318120
## 288 5.036953 5.446737
## 289 4.700480 5.814131
## 290 4.852030 5.323010
## 291 4.997212 5.313206
## 292 4.736198 5.762051
## 293 5.135798 5.416100
## 294 5.023881 5.356586
## 295 4.787492 5.129899
## 296 4.941642 5.231109
## 297 4.820282 5.283204
## 298 5.099866 5.170484
## 299 4.941642 5.484797
## 300 4.700480 5.575949
## 301 4.969813 5.262690
## 302 4.867534 4.875197
## 303 4.867534 5.463832
##
## $subset
## NULL
##
## $outlierMethod
## [1] "none"
##
## attr(,"class")
## [1] "mvn"
shapiro.test(df_model$bp_log)
##
## Shapiro-Wilk normality test
##
## data: df_model$bp_log
## W = 0.98706, p-value = 0.008145
shapiro.test(df_model$chol_log)
##
## Shapiro-Wilk normality test
##
## data: df_model$chol_log
## W = 0.99232, p-value = 0.1198
keep_iqr <- function(x) {
Q1 <- quantile(x, 0.25)
Q3 <- quantile(x, 0.75)
IQR <- Q3 - Q1
lower <- Q1 - 1.5 * IQR
upper <- Q3 + 1.5 * IQR
x >= lower & x <= upper
}
df_clean <- df_model[
keep_iqr(df_model$bp_log) &
keep_iqr(df_model$chol_log),
]
shapiro.test(df_clean$bp_log)
##
## Shapiro-Wilk normality test
##
## data: df_clean$bp_log
## W = 0.98621, p-value = 0.007336
shapiro.test(df_clean$chol_log)
##
## Shapiro-Wilk normality test
##
## data: df_clean$chol_log
## W = 0.99703, p-value = 0.8766
nrow(df_model)
## [1] 303
nrow(df_clean)
## [1] 288
Y <- df_clean[, c("bp_log", "chol_log")]
mvn(Y)
## $multivariate_normality
## Test Statistic p.value Method MVN
## 1 Henze-Zirkler 0.466 0.85 asymptotic ✓ Normal
##
## $univariate_normality
## Test Variable Statistic p.value Normality
## 1 Anderson-Darling bp_log 1.259 0.003 ✗ Not normal
## 2 Anderson-Darling chol_log 0.191 0.897 ✓ Normal
##
## $descriptives
## Variable n Mean Std.Dev Median Min Max 25th 75th Skew Kurtosis
## 1 bp_log 288 4.866 0.118 4.868 4.605 5.159 4.787 4.942 0.079 2.638
## 2 chol_log 288 5.482 0.185 5.481 5.004 6.009 5.352 5.609 -0.004 2.708
##
## $data
## bp_log chol_log
## 1 4.976734 5.451038
## 2 4.867534 5.521461
## 3 4.867534 5.318120
## 4 4.787492 5.463832
## 5 4.787492 5.869297
## 6 4.941642 5.257495
## 7 4.941642 5.683580
## 8 4.787492 5.572154
## 9 5.147494 5.293305
## 10 5.010635 5.123964
## 11 4.941642 5.476464
## 12 4.867534 5.616771
## 13 4.867534 5.583496
## 14 4.700480 5.351858
## 15 5.010635 5.645447
## 16 4.787492 5.389072
## 17 4.787492 5.828946
## 18 5.010635 5.420535
## 19 5.010635 5.509388
## 20 4.941642 5.476464
## 21 4.905275 5.455321
## 22 4.867534 5.451038
## 23 4.941642 5.420535
## 24 5.010635 5.493061
## 25 4.941642 5.293305
## 26 5.075174 5.710427
## 27 5.010635 5.356586
## 28 4.700480 5.164786
## 30 4.867534 5.283204
## 31 4.653960 5.288267
## 32 4.787492 5.176150
## 33 4.867534 5.389072
## 34 4.828314 5.609472
## 35 4.828314 5.361292
## 36 4.955827 5.176150
## 37 4.905275 5.717028
## 38 5.010635 5.446737
## 39 5.043425 5.594711
## 40 5.075174 5.886104
## 41 4.941642 5.730100
## 42 4.867534 5.501258
## 43 4.644391 5.337538
## 44 4.867534 5.575949
## 45 4.941642 5.771441
## 46 4.787492 5.783825
## 47 4.941642 5.459586
## 48 4.927254 5.549076
## 49 4.852030 5.375278
## 50 4.927254 5.455321
## 51 4.867534 5.545177
## 52 4.787492 5.710427
## 53 4.867534 5.442418
## 55 4.905275 5.529429
## 56 4.897840 5.303305
## 57 4.804021 5.402677
## 58 4.744932 5.560682
## 59 4.770685 5.204007
## 60 4.852030 5.713733
## 61 4.700480 5.579730
## 62 4.682131 5.733341
## 63 4.770685 5.225747
## 64 4.905275 5.313206
## 65 4.941642 5.351858
## 66 4.927254 5.209486
## 67 4.605170 5.402677
## 68 4.867534 5.455321
## 69 4.787492 5.393628
## 70 4.820282 5.342334
## 71 4.787492 5.552960
## 73 4.867534 5.318120
## 74 4.941642 5.564520
## 75 4.804021 5.361292
## 76 4.905275 5.521461
## 77 4.828314 5.501258
## 78 4.941642 5.398163
## 79 4.852030 5.323010
## 80 4.653960 5.480639
## 81 4.718499 5.521461
## 82 4.852030 5.730100
## 83 4.624973 5.762051
## 84 5.023881 5.697093
## 85 4.624973 5.579730
## 87 4.770685 5.624018
## 88 4.615121 5.283204
## 89 4.700480 5.365976
## 90 4.605170 5.513429
## 91 4.820282 5.541264
## 92 4.882802 5.332719
## 93 4.927254 5.407172
## 94 4.882802 5.662960
## 95 4.718499 5.075174
## 96 4.955827 5.420535
## 97 4.941642 5.976351
## 98 4.682131 5.451038
## 99 4.867534 5.752573
## 100 4.867534 5.505332
## 101 4.997212 5.497168
## 103 4.941642 5.273000
## 104 4.787492 5.480639
## 105 4.859812 5.278115
## 106 4.787492 5.351858
## 107 5.075174 5.455321
## 108 4.927254 5.463832
## 109 4.787492 5.497168
## 110 4.700480 5.537334
## 113 4.941642 5.746203
## 114 4.700480 5.351858
## 115 4.867534 5.568345
## 116 4.787492 5.370638
## 117 4.867534 5.365976
## 118 4.787492 5.262690
## 119 4.653960 5.318120
## 120 4.927254 5.493061
## 121 4.867534 5.713733
## 122 4.927254 5.602119
## 123 4.718499 5.590987
## 124 4.682131 5.587249
## 126 4.770685 5.347108
## 127 4.718499 5.318120
## 128 5.023881 5.624018
## 129 4.912655 5.278115
## 130 4.787492 5.594711
## 131 5.075174 5.303305
## 132 4.897840 5.602119
## 133 4.787492 5.686975
## 134 4.700480 5.459586
## 135 4.836282 5.723585
## 136 4.867534 5.594711
## 137 4.787492 5.181784
## 138 4.852030 5.337538
## 139 4.700480 5.303305
## 140 4.852030 5.572154
## 141 4.787492 5.686975
## 142 4.744932 5.713733
## 143 4.787492 5.342334
## 144 4.663439 5.407172
## 145 4.941642 5.283204
## 146 5.049856 5.501258
## 147 4.770685 5.488938
## 148 5.010635 5.480639
## 149 4.787492 5.420535
## 150 4.867534 5.192957
## 151 5.075174 5.429346
## 152 4.718499 5.003946
## 153 5.135798 5.424950
## 154 4.983607 5.627621
## 155 4.927254 5.393628
## 156 4.867534 5.283204
## 157 4.867534 5.533389
## 158 4.804021 5.257495
## 159 4.828314 5.393628
## 160 4.867534 5.398163
## 161 4.787492 5.480639
## 162 4.882802 5.834811
## 163 4.787492 5.056246
## 164 4.927254 5.164786
## 165 4.927254 5.164786
## 166 5.075174 5.655992
## 167 4.787492 5.433722
## 168 4.941642 5.590987
## 169 4.867534 5.537334
## 170 4.941642 5.313206
## 171 4.867534 5.545177
## 172 4.700480 5.433722
## 173 4.787492 5.648974
## 174 4.882802 5.411646
## 175 4.867534 5.327876
## 176 4.700480 5.117994
## 177 4.762174 5.438079
## 178 4.941642 5.814131
## 179 4.787492 5.176150
## 180 5.010635 5.620401
## 181 4.882802 5.866468
## 182 5.010635 5.416100
## 183 4.867534 5.799093
## 184 4.718499 5.438079
## 185 5.010635 5.493061
## 186 4.718499 5.669881
## 187 4.867534 5.533389
## 188 4.820282 5.583496
## 189 4.941642 5.451038
## 190 4.700480 5.147494
## 191 4.867534 5.720312
## 192 4.852030 5.375278
## 193 4.787492 5.236442
## 194 4.976734 5.641907
## 195 4.941642 5.220356
## 196 5.135798 5.786897
## 197 5.010635 5.442418
## 198 4.828314 5.537334
## 199 4.787492 5.587249
## 200 4.700480 5.513429
## 201 4.700480 5.283204
## 202 4.828314 5.552960
## 203 5.010635 5.598422
## 205 5.075174 5.099866
## 206 4.852030 5.541264
## 207 4.700480 5.476464
## 208 5.010635 5.552960
## 209 4.787492 5.236442
## 210 4.941642 5.176150
## 211 4.852030 5.433722
## 212 4.787492 5.560682
## 213 4.770685 5.389072
## 214 4.976734 5.726848
## 215 4.828314 5.517453
## 216 4.882802 5.831882
## 217 4.867534 5.572154
## 218 4.867534 5.799093
## 219 4.905275 5.537334
## 220 4.867534 5.545177
## 221 5.010635 6.008813
## 222 4.941642 5.379897
## 223 4.927254 5.641907
## 225 4.700480 5.476464
## 226 4.976734 5.159055
## 227 4.787492 5.638355
## 228 4.787492 5.288267
## 229 5.135798 5.662960
## 230 4.828314 5.733341
## 231 4.682131 5.493061
## 232 5.105945 5.666427
## 233 5.075174 5.666427
## 234 4.787492 5.505332
## 235 4.867534 5.774552
## 236 4.941642 5.700444
## 237 4.828314 5.703782
## 238 4.941642 5.680173
## 239 4.828314 5.717028
## 240 4.836282 5.641907
## 241 5.075174 5.594711
## 242 5.159055 5.517453
## 243 4.976734 5.356586
## 244 5.023881 5.613128
## 245 4.882802 5.214936
## 246 4.820282 5.613128
## 248 5.075174 5.505332
## 250 4.941642 5.537334
## 251 4.941642 5.697093
## 252 4.882802 5.509388
## 253 4.927254 5.683580
## 254 4.605170 5.700444
## 255 5.075174 5.609472
## 256 4.955827 5.733341
## 257 4.852030 5.556828
## 258 4.969813 5.298317
## 259 5.010635 5.497168
## 260 4.787492 5.442418
## 262 4.718499 5.438079
## 263 4.812184 5.641907
## 264 4.682131 5.594711
## 265 4.700480 5.327876
## 266 4.718499 5.356586
## 268 4.770685 5.003946
## 269 4.804021 5.655992
## 270 4.867534 5.645447
## 271 4.787492 5.517453
## 272 4.897840 5.455321
## 273 4.787492 5.468060
## 274 4.605170 5.455321
## 275 4.700480 5.616771
## 276 4.828314 5.356586
## 277 4.983607 5.384495
## 278 4.820282 5.564520
## 279 4.912655 5.765191
## 280 4.927254 5.111988
## 281 4.912655 5.752573
## 282 4.852030 5.318120
## 283 4.836282 5.384495
## 284 5.023881 5.407172
## 285 4.941642 5.332719
## 286 4.941642 5.739793
## 287 4.897840 5.318120
## 288 5.036953 5.446737
## 289 4.700480 5.814131
## 290 4.852030 5.323010
## 291 4.997212 5.313206
## 292 4.736198 5.762051
## 293 5.135798 5.416100
## 294 5.023881 5.356586
## 295 4.787492 5.129899
## 296 4.941642 5.231109
## 297 4.820282 5.283204
## 298 5.099866 5.170484
## 299 4.941642 5.484797
## 300 4.700480 5.575949
## 301 4.969813 5.262690
## 303 4.867534 5.463832
##
## $subset
## NULL
##
## $outlierMethod
## [1] "none"
##
## attr(,"class")
## [1] "mvn"
boxM(Y, df_clean$target)
##
## Box's M-test for Homogeneity of Covariance Matrices
##
## data: Y
## Chi-Sq (approx.) = 0.94458, df = 3, p-value = 0.8147
boxM(Y, df_clean$sex)
##
## Box's M-test for Homogeneity of Covariance Matrices
##
## data: Y
## Chi-Sq (approx.) = 3.3172, df = 3, p-value = 0.3453
library(biotools)
group <- interaction(df_clean$target, df_clean$sex)
boxM(Y, group)
##
## Box's M-test for Homogeneity of Covariance Matrices
##
## data: Y
## Chi-Sq (approx.) = 8.7698, df = 9, p-value = 0.4588
library(psych)
##
## Attaching package: 'psych'
## The following object is masked from 'package:MVN':
##
## mardia
Y <- df_clean[, c("bp_log", "chol_log")]
cortest.bartlett(cor(Y), n = nrow(Y))
## $chisq
## [1] 2.608669
##
## $p.value
## [1] 0.1062809
##
## $df
## [1] 1
manova_model <- manova(
cbind(bp_log, chol_log) ~ target * sex,
data = df_clean
)
summary(manova_model, test = "Pillai")
## Df Pillai approx F num Df den Df Pr(>F)
## target 1 0.019935 2.8782 2 283 0.057884 .
## sex 1 0.034773 5.0976 2 283 0.006685 **
## target:sex 1 0.018159 2.6170 2 283 0.074790 .
## Residuals 284
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Mancova ## Uji homogen
model_bp <- lm(
bp_log ~ sex * age + sex * max_heart_rate_achieved,
data = df_clean
)
anova(model_bp)
## Analysis of Variance Table
##
## Response: bp_log
## Df Sum Sq Mean Sq F value Pr(>F)
## sex 1 0.0055 0.005542 0.4219 0.5165
## age 1 0.2452 0.245236 18.6702 2.156e-05 ***
## max_heart_rate_achieved 1 0.0183 0.018283 1.3919 0.2391
## sex:age 1 0.0013 0.001321 0.1005 0.7514
## sex:max_heart_rate_achieved 1 0.0084 0.008379 0.6379 0.4252
## Residuals 282 3.7041 0.013135
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
model_chol <- lm(
chol_log ~ sex * age + sex * max_heart_rate_achieved,
data = df_clean
)
anova(model_chol)
## Analysis of Variance Table
##
## Response: chol_log
## Df Sum Sq Mean Sq F value Pr(>F)
## sex 1 0.1889 0.188933 5.7576 0.017066 *
## age 1 0.2877 0.287691 8.7672 0.003328 **
## max_heart_rate_achieved 1 0.0414 0.041407 1.2619 0.262253
## sex:age 1 0.0001 0.000064 0.0020 0.964677
## sex:max_heart_rate_achieved 1 0.0750 0.074996 2.2855 0.131710
## Residuals 282 9.2537 0.032814
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
mancova_model <- manova(
cbind(bp_log, chol_log) ~
sex + target + age + max_heart_rate_achieved,
data = df_clean
)
summary(mancova_model, test = "Pillai")
## Df Pillai approx F num Df den Df Pr(>F)
## sex 1 0.021369 3.0788 2 282 0.047564 *
## target 1 0.036946 5.4092 2 282 0.004952 **
## age 1 0.067140 10.1480 2 282 5.548e-05 ***
## max_heart_rate_achieved 1 0.021955 3.1652 2 282 0.043711 *
## Residuals 283
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
mancova_model <- manova(
cbind(bp_log, chol_log) ~
sex * target + age + max_heart_rate_achieved,
data = df_clean
)
summary(mancova_model, test = "Pillai")
## Df Pillai approx F num Df den Df Pr(>F)
## sex 1 0.021377 3.0691 2 281 0.048025 *
## target 1 0.037131 5.4180 2 281 0.004912 **
## age 1 0.067839 10.2250 2 281 5.17e-05 ***
## max_heart_rate_achieved 1 0.022074 3.1714 2 281 0.043449 *
## sex:target 1 0.016954 2.4231 2 281 0.090496 .
## Residuals 282
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ancova_bp <- aov(
bp_log ~ sex * target + age + max_heart_rate_achieved,
data = df_clean
)
summary(ancova_bp)
## Df Sum Sq Mean Sq F value Pr(>F)
## sex 1 0.006 0.00554 0.431 0.511800
## target 1 0.058 0.05809 4.522 0.034324 *
## age 1 0.200 0.19965 15.544 0.000102 ***
## max_heart_rate_achieved 1 0.036 0.03587 2.792 0.095825 .
## sex:target 1 0.062 0.06162 4.798 0.029316 *
## Residuals 282 3.622 0.01284
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ancova_chol <- aov(
chol_log ~ sex * target + age + max_heart_rate_achieved,
data = df_clean
)
summary(ancova_chol)
## Df Sum Sq Mean Sq F value Pr(>F)
## sex 1 0.189 0.18893 5.833 0.01636 *
## target 1 0.218 0.21795 6.729 0.00998 **
## age 1 0.182 0.18184 5.614 0.01849 *
## max_heart_rate_achieved 1 0.123 0.12293 3.795 0.05238 .
## sex:target 1 0.001 0.00103 0.032 0.85826
## Residuals 282 9.134 0.03239
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1