├── knn-tf ├── index.js ├── package.json ├── load-csv.js └── package-lock.json ├── .gitignore ├── plinko ├── score.js ├── lib │ ├── style.css │ └── index.js └── index.html ├── regressions ├── package.json ├── load-csv.js ├── package-lock.json └── cars.csv └── README.md /knn-tf/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | plinko_analysis 2 | .DS_Store 3 | node_modules 4 | -------------------------------------------------------------------------------- /plinko/score.js: -------------------------------------------------------------------------------- 1 | function onScoreUpdate(dropPosition, bounciness, size, bucketLabel) { 2 | // Ran every time a balls drops into a bucket 3 | } 4 | 5 | function runAnalysis() { 6 | // Write code here to analyze stuff 7 | } 8 | 9 | -------------------------------------------------------------------------------- /knn-tf/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "knn-tf", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "@tensorflow/tfjs-node": "^0.1.17", 13 | "lodash": "^4.17.11", 14 | "shuffle-seed": "^1.1.6" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /regressions/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "logistic_regression", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": {}, 7 | "author": "", 8 | "license": "ISC", 9 | "dependencies": { 10 | "@tensorflow/tfjs-node": "^0.1.17", 11 | "lodash": "^4.17.11", 12 | "memoize": "^0.1.1", 13 | "mnist-data": "^1.2.6", 14 | "node-remote-plot": "^1.2.0", 15 | "shuffle-seed": "^1.1.6" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ML Kits 2 | 3 | Starter projects for learning about Machine Learning. 4 | 5 | ## Downloading 6 | 7 | There are two ways to download this repository - either as a zip or by using git. 8 | 9 | ### Zip Download 10 | 11 | To download this project as a zip file, find the green 'Clone or Download' button on the top right hand side. Click that button, then download this project as a zip file. 12 | 13 | Once downloaded extract the zip file to your local computer. 14 | 15 | ### Git Download 16 | 17 | To download this project using git, run the following command at your terminal: 18 | 19 | ``` 20 | git clone https://github.com/StephenGrider/MLKits.git 21 | ``` 22 | -------------------------------------------------------------------------------- /plinko/lib/style.css: -------------------------------------------------------------------------------- 1 | .target-wrapper { 2 | display: flex; 3 | justify-content: center; 4 | align-items: center; 5 | margin-bottom: 10px; 6 | flex-direction: column; 7 | position: relative; 8 | } 9 | 10 | canvas { 11 | border: 1px solid gray; 12 | } 13 | 14 | .bucket-labels { 15 | display: flex; 16 | max-width: 795px; 17 | justify-content: space-around; 18 | } 19 | 20 | .bucket-labels > div { 21 | z-index: 10; 22 | margin-top: -67px; 23 | min-width: 79.5px; 24 | text-align: center; 25 | } 26 | 27 | .bucket-labels .score { 28 | font-weight: bolder; 29 | font-size: 20px; 30 | } 31 | 32 | .wrapper { 33 | margin: 20px; 34 | } 35 | 36 | .x-axis { 37 | position: absolute; 38 | z-index: 10; 39 | top: 0px; 40 | left: 10px; 41 | } 42 | 43 | /* .x-axis span.neck { 44 | display: inline-block; 45 | min-width: 200px; 46 | border-bottom: 1px solid black; 47 | position: relative; 48 | bottom: 6px; 49 | right: -9px; 50 | } 51 | 52 | .x-axis span.head { 53 | font-size: 18px; 54 | } */ 55 | 56 | .x-position { 57 | position: absolute; 58 | right: 10px; 59 | } 60 | 61 | .target-wrapper > div { 62 | position: relative; 63 | } 64 | -------------------------------------------------------------------------------- /knn-tf/load-csv.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const _ = require('lodash'); 3 | const shuffleSeed = require('shuffle-seed'); 4 | 5 | function extractColumns(data, columnNames) { 6 | const headers = _.first(data); 7 | 8 | const indexes = _.map(columnNames, column => headers.indexOf(column)); 9 | const extracted = _.map(data, row => _.pullAt(row, indexes)); 10 | 11 | return extracted; 12 | } 13 | 14 | module.exports = function loadCSV( 15 | filename, 16 | { 17 | dataColumns = [], 18 | labelColumns = [], 19 | converters = {}, 20 | shuffle = false, 21 | splitTest = false 22 | } 23 | ) { 24 | let data = fs.readFileSync(filename, { encoding: 'utf-8' }); 25 | data = _.map(data.split('\n'), d => d.split(',')); 26 | data = _.dropRightWhile(data, val => _.isEqual(val, [''])); 27 | const headers = _.first(data); 28 | 29 | data = _.map(data, (row, index) => { 30 | if (index === 0) { 31 | return row; 32 | } 33 | return _.map(row, (element, index) => { 34 | if (converters[headers[index]]) { 35 | const converted = converters[headers[index]](element); 36 | return _.isNaN(converted) ? element : converted; 37 | } 38 | 39 | const result = parseFloat(element.replace('"', '')); 40 | return _.isNaN(result) ? element : result; 41 | }); 42 | }); 43 | 44 | let labels = extractColumns(data, labelColumns); 45 | data = extractColumns(data, dataColumns); 46 | 47 | data.shift(); 48 | labels.shift(); 49 | 50 | if (shuffle) { 51 | data = shuffleSeed.shuffle(data, 'phrase'); 52 | labels = shuffleSeed.shuffle(labels, 'phrase'); 53 | } 54 | 55 | if (splitTest) { 56 | const trainSize = _.isNumber(splitTest) 57 | ? splitTest 58 | : Math.floor(data.length / 2); 59 | 60 | return { 61 | features: data.slice(trainSize), 62 | labels: labels.slice(trainSize), 63 | testFeatures: data.slice(0, trainSize), 64 | testLabels: labels.slice(0, trainSize) 65 | }; 66 | } else { 67 | return { features: data, labels }; 68 | } 69 | }; 70 | -------------------------------------------------------------------------------- /regressions/load-csv.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const _ = require('lodash'); 3 | const shuffleSeed = require('shuffle-seed'); 4 | 5 | function extractColumns(data, columnNames) { 6 | const headers = _.first(data); 7 | 8 | const indexes = _.map(columnNames, column => headers.indexOf(column)); 9 | const extracted = _.map(data, row => _.pullAt(row, indexes)); 10 | 11 | return extracted; 12 | } 13 | 14 | module.exports = function loadCSV( 15 | filename, 16 | { 17 | dataColumns = [], 18 | labelColumns = [], 19 | converters = {}, 20 | shuffle = false, 21 | splitTest = false 22 | } 23 | ) { 24 | let data = fs.readFileSync(filename, { encoding: 'utf-8' }); 25 | data = _.map(data.split('\n'), d => d.split(',')); 26 | data = _.dropRightWhile(data, val => _.isEqual(val, [''])); 27 | const headers = _.first(data); 28 | 29 | data = _.map(data, (row, index) => { 30 | if (index === 0) { 31 | return row; 32 | } 33 | return _.map(row, (element, index) => { 34 | if (converters[headers[index]]) { 35 | const converted = converters[headers[index]](element); 36 | return _.isNaN(converted) ? element : converted; 37 | } 38 | 39 | const result = parseFloat(element.replace('"', '')); 40 | return _.isNaN(result) ? element : result; 41 | }); 42 | }); 43 | 44 | let labels = extractColumns(data, labelColumns); 45 | data = extractColumns(data, dataColumns); 46 | 47 | data.shift(); 48 | labels.shift(); 49 | 50 | if (shuffle) { 51 | data = shuffleSeed.shuffle(data, 'phrase'); 52 | labels = shuffleSeed.shuffle(labels, 'phrase'); 53 | } 54 | 55 | if (splitTest) { 56 | const trainSize = _.isNumber(splitTest) 57 | ? splitTest 58 | : Math.floor(data.length / 2); 59 | 60 | return { 61 | features: data.slice(trainSize), 62 | labels: labels.slice(trainSize), 63 | testFeatures: data.slice(0, trainSize), 64 | testLabels: labels.slice(0, trainSize) 65 | }; 66 | } else { 67 | return { features: data, labels }; 68 | } 69 | }; 70 | -------------------------------------------------------------------------------- /plinko/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Plinko 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
0
24 |
Bucket #1
25 |
26 |
27 |
0
28 |
Bucket #2
29 |
30 |
31 |
0
32 |
Bucket #3
33 |
34 |
35 |
0
36 |
Bucket #4
37 |
38 |
39 |
0
40 |
Bucket #5
41 |
42 |
43 |
0
44 |
Bucket #6
45 |
46 |
47 |
0
48 |
Bucket #7
49 |
50 |
51 |
0
52 |
Bucket #8
53 |
54 |
55 |
0
56 |
Bucket #9
57 |
58 |
59 |
0
60 |
Bucket #10
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |

Range of Ball Bounciness (Range: 0.0 to 1.0)

69 |
70 |
71 | 72 | 73 |
74 |
75 | 76 | 77 |
78 |
79 |
80 |
81 |
82 |
83 |

Range of Ball Size (Range: 1.0 to 30.0)

84 |
85 |
86 | 87 | 88 |
89 |
90 | 91 | 92 |
93 |
94 |
95 |
96 |
97 |
98 | 99 |
100 |
101 |

Change How Many Drop

102 |
103 | 104 | 105 |
106 |
107 | 108 |
109 |

Drop a Bunch at Various Spots

110 |
111 | 112 | 113 |
114 |
115 | 116 | 117 |
118 | 119 |
120 | 121 |
122 |

Drop a Bunch at a Single Spot

123 |
124 | 125 | 126 |
127 |
128 | 129 | 130 |
131 | 132 |
133 | 134 |
135 |
136 |
137 | 138 |
139 |
140 | 141 |
142 |
143 |
144 |
145 |
146 |
147 | 148 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | -------------------------------------------------------------------------------- /plinko/lib/index.js: -------------------------------------------------------------------------------- 1 | ////////////////////////////////////////// 2 | // Hi! 3 | // You probably don't need to edit me 4 | ////////////////////////////////////////// 5 | 6 | const BALL_SIZE = 16; 7 | const CANVAS_HEIGHT = 600; 8 | const CANVAS_WIDTH = 794; 9 | const PEG_X = 70; 10 | const PEG_Y = 70; 11 | const BUCKET_COLOR = '#b2ebf2'; 12 | const COLORS = [ 13 | '#e1f5fe', 14 | '#b3e5fc', 15 | '#81d4fa', 16 | '#4fc3f7', 17 | '#29b6f6', 18 | '#03a9f4', 19 | '#039be5', 20 | '#0288d1', 21 | '#0277bd', 22 | '#01579b' 23 | ]; 24 | 25 | const Engine = Matter.Engine, 26 | Render = Matter.Render, 27 | World = Matter.World, 28 | Bodies = Matter.Bodies, 29 | Events = Matter.Events, 30 | Body = Matter.Body; 31 | 32 | const engine = Engine.create({ 33 | timing: { timeScale: 2 } 34 | }); 35 | const render = Render.create({ 36 | element: document.querySelector('.target'), 37 | engine: engine, 38 | options: { 39 | width: CANVAS_WIDTH, 40 | height: CANVAS_HEIGHT, 41 | wireframes: false, 42 | background: '#f1f1f1' 43 | } 44 | }); 45 | 46 | const ground = Bodies.rectangle( 47 | CANVAS_WIDTH / 2, 48 | CANVAS_HEIGHT, 49 | CANVAS_WIDTH * 3, 50 | 50, 51 | { 52 | id: 999, 53 | isStatic: true, 54 | collisionFilter: { group: 'ground' } 55 | } 56 | ); 57 | const ground2 = Bodies.rectangle(0, CANVAS_HEIGHT, CANVAS_WIDTH * 3, 50, { 58 | id: 9999, 59 | isStatic: true, 60 | collisionFilter: { group: 'ground' } 61 | }); 62 | const indicator = Bodies.circle(BALL_SIZE, BALL_SIZE, BALL_SIZE, { 63 | isStatic: true, 64 | collisionFilter: { group: 'ball' } 65 | }); 66 | 67 | const pegs = []; 68 | for (let i = 1; i < CANVAS_HEIGHT / PEG_Y - 1; i++) { 69 | for (let j = 1; j < CANVAS_WIDTH / PEG_X + 1; j++) { 70 | let x = j * PEG_X - BALL_SIZE * 1.5; 71 | const y = i * PEG_Y; 72 | 73 | if (i % 2 == 0) { 74 | x -= PEG_X / 2; 75 | } 76 | 77 | const peg = Bodies.polygon(x, y, 7, BALL_SIZE / 4, { 78 | isStatic: true 79 | }); 80 | pegs.push(peg); 81 | } 82 | } 83 | 84 | const leftWall = Bodies.rectangle( 85 | -1, 86 | CANVAS_HEIGHT / 2 + BALL_SIZE * 2, 87 | 1, 88 | CANVAS_HEIGHT, 89 | { 90 | isStatic: true 91 | } 92 | ); 93 | const rightWall = Bodies.rectangle( 94 | CANVAS_WIDTH + 1, 95 | CANVAS_HEIGHT / 2 + BALL_SIZE * 2, 96 | 1, 97 | CANVAS_HEIGHT, 98 | { 99 | isStatic: true 100 | } 101 | ); 102 | 103 | const buckets = []; 104 | const bucketIdRange = []; 105 | const bucketWidth = CANVAS_WIDTH / 10; 106 | const bucketHeight = BALL_SIZE * 3; 107 | for (let i = 0; i < 10; i++) { 108 | const bucket = Bodies.rectangle( 109 | bucketWidth * i + bucketWidth * 0.5, 110 | CANVAS_HEIGHT - bucketHeight, 111 | bucketWidth, 112 | bucketHeight, 113 | { 114 | id: i, 115 | isStatic: true, 116 | isSensor: true, 117 | render: { 118 | fillStyle: BUCKET_COLOR 119 | }, 120 | collisionFilter: { 121 | group: 'bucket' 122 | } 123 | } 124 | ); 125 | const divider = Bodies.rectangle( 126 | bucketWidth * i, 127 | CANVAS_HEIGHT - bucketHeight, 128 | 2, 129 | bucketHeight, 130 | { 131 | isStatic: true, 132 | collisionFilter: { group: 'bucket' } 133 | } 134 | ); 135 | bucketIdRange.push(i); 136 | buckets.push(bucket); 137 | buckets.push(divider); 138 | } 139 | 140 | World.add(engine.world, [ 141 | ground2, 142 | ...pegs, 143 | ...buckets, 144 | ground, 145 | indicator, 146 | leftWall, 147 | rightWall 148 | ]); 149 | Engine.run(engine); 150 | Render.run(render); 151 | let ballCount = 0; 152 | function dropBalls(position, quantity) { 153 | const balls = []; 154 | 155 | const startRes = Math.min( 156 | Math.abs(parseFloat(document.querySelector('#coef-start').value)), 157 | 1 158 | ); 159 | const endRes = Math.min( 160 | Math.abs(parseFloat(document.querySelector('#coef-end').value)), 161 | 1 162 | ); 163 | 164 | const startSize = parseFloat(document.querySelector('#size-start').value); 165 | const endSize = parseFloat(document.querySelector('#size-end').value); 166 | for (let i = 0; i < quantity; i++) { 167 | ballCount++; 168 | if (ballCount > 785) { 169 | ballCount--; 170 | break; 171 | } 172 | const restitution = Math.random() * (endRes - startRes) + startRes; 173 | const size = Math.random() * (endSize - startSize) + startSize; 174 | const dropX = position; 175 | 176 | const ball = Bodies.circle(dropX, size, size, { 177 | restitution, 178 | collisionFilter: { group: 'ball' }, 179 | friction: 0.9 180 | }); 181 | ball.size = size; 182 | ball.restitution = restitution; 183 | ball.dropX = position; 184 | balls.push(ball); 185 | } 186 | 187 | World.add(engine.world, balls); 188 | } 189 | 190 | let x = 0; 191 | const canvas = document.querySelector('canvas'); 192 | const events = { 193 | mousemove(event) { 194 | x = event.offsetX; 195 | 196 | Body.setPosition(indicator, { x: x, y: BALL_SIZE }); 197 | document.querySelector('.x-position').innerHTML = `Drop Position: ${x}`; 198 | }, 199 | click() { 200 | const quantity = parseInt(document.querySelector('#drop-quantity').value); 201 | 202 | dropBalls(x, quantity); 203 | } 204 | }; 205 | for (let event in events) { 206 | canvas.addEventListener(event, events[event]); 207 | } 208 | 209 | let _score = {}; 210 | Events.on(engine, 'collisionActive', ({ pairs }) => { 211 | const filteredPairs = pairs.forEach(pair => { 212 | if ( 213 | (bucketIdRange.includes(pair.bodyA.id) || 214 | bucketIdRange.includes(pair.bodyB.id)) && 215 | Math.abs(pair.bodyB.velocity.y) < 0.1 && 216 | pair.bodyB.position.y > CANVAS_HEIGHT - 200 217 | ) { 218 | World.remove(engine.world, pair.bodyB); 219 | ballCount--; 220 | const bucketId = pair.bodyA.id; 221 | 222 | _score[bucketId] = (_score[bucketId] || 0) + 1; 223 | 224 | const count = parseInt( 225 | document.querySelector(`#bucket-${bucketId}`).innerHTML 226 | ); 227 | document.querySelector(`#bucket-${bucketId}`).innerHTML = count + 1; 228 | 229 | onScoreUpdate( 230 | Math.round(pair.bodyB.dropX), 231 | pair.bodyB.restitution, 232 | pair.bodyB.size, 233 | bucketId + 1 234 | ); 235 | updateBucketColors(_score); 236 | } 237 | }); 238 | }); 239 | 240 | // document.querySelector('button#export').addEventListener('click', () => { 241 | // const rows = outputs.join('\n'); 242 | // const a = document.createElement('a'); 243 | // mimeType = 'application/octet-stream'; 244 | // a.href = URL.createObjectURL( 245 | // new Blob([rows], { 246 | // type: mimeType 247 | // }) 248 | // ); 249 | // a.setAttribute('download', 'data.csv'); 250 | // document.body.appendChild(a); 251 | // a.click(); 252 | // document.body.removeChild(a); 253 | // }); 254 | 255 | document.querySelector('button#scan').addEventListener('click', () => { 256 | const quantity = parseInt(document.querySelector('#scan-quantity').value); 257 | const spacing = parseInt(document.querySelector('#scan-spacing').value); 258 | 259 | for (let i = 1; i < CANVAS_WIDTH / spacing; i++) { 260 | dropBalls(i * spacing, quantity); 261 | } 262 | }); 263 | 264 | document.querySelector('button#spot').addEventListener('click', () => { 265 | const quantity = parseInt(document.querySelector('#spot-quantity').value); 266 | const spot = parseInt(document.querySelector('#spot-location').value); 267 | 268 | dropBalls(spot, quantity); 269 | }); 270 | 271 | document.querySelector('button#analyze').addEventListener('click', runAnalysis); 272 | 273 | document 274 | .querySelectorAll('form') 275 | .forEach(f => f.addEventListener('submit', e => e.preventDefault())); 276 | 277 | function updateBucketColors(_score) { 278 | const counts = _.range(0, 10).map(i => _score[i] || 0); 279 | 280 | const min = _.min(counts); 281 | const max = _.max(counts); 282 | 283 | const ranks = counts.map((count, i) => ({ i, c: count })); 284 | 285 | let counter = 0; 286 | const d = _.chain(ranks) 287 | .sortBy('c') 288 | .forEach(({ i, c }, j, collection) => { 289 | if (_.get(collection, `[${j - 1}].c`) !== c) { 290 | counter++; 291 | } 292 | buckets[i * 2].render.fillStyle = COLORS[counter - 1]; 293 | }) 294 | .value(); 295 | } 296 | 297 | document.querySelector('#reset').addEventListener('click', function() { 298 | try { 299 | while (outputs.length) { 300 | outputs.pop(); 301 | } 302 | } catch (e) {} 303 | 304 | _.range(0, 10).forEach(i => { 305 | buckets[i * 2].render.fillStyle = BUCKET_COLOR; 306 | document.querySelector(`#bucket-${i}`).innerHTML = 0; 307 | }); 308 | 309 | _score = {}; 310 | }); 311 | -------------------------------------------------------------------------------- /knn-tf/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "knn-tf", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@protobufjs/aspromise": { 8 | "version": "1.1.2", 9 | "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", 10 | "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" 11 | }, 12 | "@protobufjs/base64": { 13 | "version": "1.1.2", 14 | "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", 15 | "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" 16 | }, 17 | "@protobufjs/codegen": { 18 | "version": "2.0.4", 19 | "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", 20 | "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" 21 | }, 22 | "@protobufjs/eventemitter": { 23 | "version": "1.1.0", 24 | "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", 25 | "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" 26 | }, 27 | "@protobufjs/fetch": { 28 | "version": "1.1.0", 29 | "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", 30 | "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", 31 | "requires": { 32 | "@protobufjs/aspromise": "1.1.2", 33 | "@protobufjs/inquire": "1.1.0" 34 | } 35 | }, 36 | "@protobufjs/float": { 37 | "version": "1.0.2", 38 | "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", 39 | "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" 40 | }, 41 | "@protobufjs/inquire": { 42 | "version": "1.1.0", 43 | "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", 44 | "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" 45 | }, 46 | "@protobufjs/path": { 47 | "version": "1.1.2", 48 | "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", 49 | "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" 50 | }, 51 | "@protobufjs/pool": { 52 | "version": "1.1.0", 53 | "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", 54 | "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" 55 | }, 56 | "@protobufjs/utf8": { 57 | "version": "1.1.0", 58 | "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", 59 | "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" 60 | }, 61 | "@tensorflow/tfjs": { 62 | "version": "0.12.7", 63 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-0.12.7.tgz", 64 | "integrity": "sha512-sGqnS7+Zj4SK6ap+fdFDGgddQf7l9RJBkWJc36frwP2F4LmFQQ5ED4+Wq7cBM1LzuyNq0p3pREWBbCfab0pnyw==", 65 | "requires": { 66 | "@tensorflow/tfjs-converter": "0.5.9", 67 | "@tensorflow/tfjs-core": "0.12.17", 68 | "@tensorflow/tfjs-layers": "0.7.5" 69 | } 70 | }, 71 | "@tensorflow/tfjs-converter": { 72 | "version": "0.5.9", 73 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-0.5.9.tgz", 74 | "integrity": "sha512-48sw17WffIoPYTN2gNZ5HWvjKLtQYXrSy+mqaZtiWaRYVjDzJdla6g7dPAL77MR2rxQAfVYMXg8GRDBmkzyBDw==", 75 | "requires": { 76 | "@types/long": "3.0.32", 77 | "protobufjs": "6.8.8" 78 | } 79 | }, 80 | "@tensorflow/tfjs-core": { 81 | "version": "0.12.17", 82 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-0.12.17.tgz", 83 | "integrity": "sha512-CgFazQpGB21n1LRSxgyMwy0cN6WtuUPBP2W75zk6Rw+gFUXb8ZNh7fhn4nObjgKeIka36TI9MvT1FYrY+z150w==", 84 | "requires": { 85 | "@types/seedrandom": "2.4.27", 86 | "@types/webgl-ext": "0.0.29", 87 | "@types/webgl2": "0.0.4", 88 | "seedrandom": "2.4.4" 89 | } 90 | }, 91 | "@tensorflow/tfjs-layers": { 92 | "version": "0.7.5", 93 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-0.7.5.tgz", 94 | "integrity": "sha512-JIo4l0yEIfYi+quJG71wAeCP9tgXICg/MIOstowfCVGTHKh8oBVEm39bAI/zyTYYtFVLHeQSvY2KuRCN2h0nBg==" 95 | }, 96 | "@tensorflow/tfjs-node": { 97 | "version": "0.1.17", 98 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-node/-/tfjs-node-0.1.17.tgz", 99 | "integrity": "sha512-NCTmf87u0XhZBE4lAHGxmjQneZrkkQRZCyUmSlFo4LRfkRIrFT+QJYIonJ/tJof8NtCNLRq9yVS/d5x+FvqntA==", 100 | "requires": { 101 | "@tensorflow/tfjs": "0.12.7", 102 | "adm-zip": "0.4.11", 103 | "bindings": "1.3.0", 104 | "progress": "2.0.0", 105 | "rimraf": "2.6.2", 106 | "tar": "4.4.6" 107 | } 108 | }, 109 | "@types/long": { 110 | "version": "3.0.32", 111 | "resolved": "https://registry.npmjs.org/@types/long/-/long-3.0.32.tgz", 112 | "integrity": "sha512-ZXyOOm83p7X8p3s0IYM3VeueNmHpkk/yMlP8CLeOnEcu6hIwPH7YjZBvhQkR0ZFS2DqZAxKtJ/M5fcuv3OU5BA==" 113 | }, 114 | "@types/node": { 115 | "version": "10.11.0", 116 | "resolved": "https://registry.npmjs.org/@types/node/-/node-10.11.0.tgz", 117 | "integrity": "sha512-R4Dvw6KjSYn/SpvjRchBOwXr14vVVcFXCtnM3f0aLvlJS8a599rrcEoihcP2/+Z/f75E5GNPd4aWM7j1yei9og==" 118 | }, 119 | "@types/seedrandom": { 120 | "version": "2.4.27", 121 | "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.27.tgz", 122 | "integrity": "sha1-nbVjk33YaRX2kJK8QyWdL0hXjkE=" 123 | }, 124 | "@types/webgl-ext": { 125 | "version": "0.0.29", 126 | "resolved": "https://registry.npmjs.org/@types/webgl-ext/-/webgl-ext-0.0.29.tgz", 127 | "integrity": "sha512-ZlVjDQU5Vlc9hF4LGdDldujZUf0amwlwGv1RI2bfvdrEHIl6X/7MZVpemJUjS7NxD9XaKfE8SlFrxsfXpUkt/A==" 128 | }, 129 | "@types/webgl2": { 130 | "version": "0.0.4", 131 | "resolved": "https://registry.npmjs.org/@types/webgl2/-/webgl2-0.0.4.tgz", 132 | "integrity": "sha512-PACt1xdErJbMUOUweSrbVM7gSIYm1vTncW2hF6Os/EeWi6TXYAYMPp+8v6rzHmypE5gHrxaxZNXgMkJVIdZpHw==" 133 | }, 134 | "adm-zip": { 135 | "version": "0.4.11", 136 | "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", 137 | "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==" 138 | }, 139 | "balanced-match": { 140 | "version": "1.0.0", 141 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 142 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 143 | }, 144 | "bindings": { 145 | "version": "1.3.0", 146 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", 147 | "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" 148 | }, 149 | "brace-expansion": { 150 | "version": "1.1.11", 151 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 152 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 153 | "requires": { 154 | "balanced-match": "1.0.0", 155 | "concat-map": "0.0.1" 156 | } 157 | }, 158 | "chownr": { 159 | "version": "1.1.1", 160 | "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", 161 | "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==" 162 | }, 163 | "concat-map": { 164 | "version": "0.0.1", 165 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 166 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 167 | }, 168 | "fs-minipass": { 169 | "version": "1.2.5", 170 | "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", 171 | "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", 172 | "requires": { 173 | "minipass": "2.3.4" 174 | } 175 | }, 176 | "fs.realpath": { 177 | "version": "1.0.0", 178 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 179 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 180 | }, 181 | "glob": { 182 | "version": "7.1.3", 183 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", 184 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", 185 | "requires": { 186 | "fs.realpath": "1.0.0", 187 | "inflight": "1.0.6", 188 | "inherits": "2.0.3", 189 | "minimatch": "3.0.4", 190 | "once": "1.4.0", 191 | "path-is-absolute": "1.0.1" 192 | } 193 | }, 194 | "inflight": { 195 | "version": "1.0.6", 196 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 197 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 198 | "requires": { 199 | "once": "1.4.0", 200 | "wrappy": "1.0.2" 201 | } 202 | }, 203 | "inherits": { 204 | "version": "2.0.3", 205 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 206 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 207 | }, 208 | "lodash": { 209 | "version": "4.17.11", 210 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", 211 | "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" 212 | }, 213 | "long": { 214 | "version": "4.0.0", 215 | "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", 216 | "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" 217 | }, 218 | "minimatch": { 219 | "version": "3.0.4", 220 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 221 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 222 | "requires": { 223 | "brace-expansion": "1.1.11" 224 | } 225 | }, 226 | "minimist": { 227 | "version": "0.0.8", 228 | "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 229 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 230 | }, 231 | "minipass": { 232 | "version": "2.3.4", 233 | "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz", 234 | "integrity": "sha512-mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==", 235 | "requires": { 236 | "safe-buffer": "5.1.2", 237 | "yallist": "3.0.2" 238 | } 239 | }, 240 | "minizlib": { 241 | "version": "1.1.0", 242 | "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", 243 | "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", 244 | "requires": { 245 | "minipass": "2.3.4" 246 | } 247 | }, 248 | "mkdirp": { 249 | "version": "0.5.1", 250 | "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 251 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 252 | "requires": { 253 | "minimist": "0.0.8" 254 | } 255 | }, 256 | "once": { 257 | "version": "1.4.0", 258 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 259 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 260 | "requires": { 261 | "wrappy": "1.0.2" 262 | } 263 | }, 264 | "path-is-absolute": { 265 | "version": "1.0.1", 266 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 267 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 268 | }, 269 | "progress": { 270 | "version": "2.0.0", 271 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 272 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" 273 | }, 274 | "protobufjs": { 275 | "version": "6.8.8", 276 | "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.8.8.tgz", 277 | "integrity": "sha512-AAmHtD5pXgZfi7GMpllpO3q1Xw1OYldr+dMUlAnffGTAhqkg72WdmSY71uKBF/JuyiKs8psYbtKrhi0ASCD8qw==", 278 | "requires": { 279 | "@protobufjs/aspromise": "1.1.2", 280 | "@protobufjs/base64": "1.1.2", 281 | "@protobufjs/codegen": "2.0.4", 282 | "@protobufjs/eventemitter": "1.1.0", 283 | "@protobufjs/fetch": "1.1.0", 284 | "@protobufjs/float": "1.0.2", 285 | "@protobufjs/inquire": "1.1.0", 286 | "@protobufjs/path": "1.1.2", 287 | "@protobufjs/pool": "1.1.0", 288 | "@protobufjs/utf8": "1.1.0", 289 | "@types/long": "4.0.0", 290 | "@types/node": "10.11.0", 291 | "long": "4.0.0" 292 | }, 293 | "dependencies": { 294 | "@types/long": { 295 | "version": "4.0.0", 296 | "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.0.tgz", 297 | "integrity": "sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q==" 298 | } 299 | } 300 | }, 301 | "rimraf": { 302 | "version": "2.6.2", 303 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", 304 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", 305 | "requires": { 306 | "glob": "7.1.3" 307 | } 308 | }, 309 | "safe-buffer": { 310 | "version": "5.1.2", 311 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 312 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 313 | }, 314 | "seedrandom": { 315 | "version": "2.4.4", 316 | "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-2.4.4.tgz", 317 | "integrity": "sha512-9A+PDmgm+2du77B5i0Ip2cxOqqHjgNxnBgglxLcX78A2D6c2rTo61z4jnVABpF4cKeDMDG+cmXXvdnqse2VqMA==" 318 | }, 319 | "shuffle-seed": { 320 | "version": "1.1.6", 321 | "resolved": "https://registry.npmjs.org/shuffle-seed/-/shuffle-seed-1.1.6.tgz", 322 | "integrity": "sha1-UzwSaDurO0+j6HUfxOViFGdEJgs=", 323 | "requires": { 324 | "seedrandom": "2.4.4" 325 | } 326 | }, 327 | "tar": { 328 | "version": "4.4.6", 329 | "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", 330 | "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", 331 | "requires": { 332 | "chownr": "1.1.1", 333 | "fs-minipass": "1.2.5", 334 | "minipass": "2.3.4", 335 | "minizlib": "1.1.0", 336 | "mkdirp": "0.5.1", 337 | "safe-buffer": "5.1.2", 338 | "yallist": "3.0.2" 339 | } 340 | }, 341 | "wrappy": { 342 | "version": "1.0.2", 343 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 344 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 345 | }, 346 | "yallist": { 347 | "version": "3.0.2", 348 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", 349 | "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" 350 | } 351 | } 352 | } 353 | -------------------------------------------------------------------------------- /regressions/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "logistic_regression", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@protobufjs/aspromise": { 8 | "version": "1.1.2", 9 | "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", 10 | "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" 11 | }, 12 | "@protobufjs/base64": { 13 | "version": "1.1.2", 14 | "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", 15 | "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" 16 | }, 17 | "@protobufjs/codegen": { 18 | "version": "2.0.4", 19 | "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", 20 | "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" 21 | }, 22 | "@protobufjs/eventemitter": { 23 | "version": "1.1.0", 24 | "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", 25 | "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" 26 | }, 27 | "@protobufjs/fetch": { 28 | "version": "1.1.0", 29 | "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", 30 | "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", 31 | "requires": { 32 | "@protobufjs/aspromise": "1.1.2", 33 | "@protobufjs/inquire": "1.1.0" 34 | } 35 | }, 36 | "@protobufjs/float": { 37 | "version": "1.0.2", 38 | "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", 39 | "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" 40 | }, 41 | "@protobufjs/inquire": { 42 | "version": "1.1.0", 43 | "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", 44 | "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" 45 | }, 46 | "@protobufjs/path": { 47 | "version": "1.1.2", 48 | "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", 49 | "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" 50 | }, 51 | "@protobufjs/pool": { 52 | "version": "1.1.0", 53 | "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", 54 | "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" 55 | }, 56 | "@protobufjs/utf8": { 57 | "version": "1.1.0", 58 | "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", 59 | "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" 60 | }, 61 | "@tensorflow/tfjs": { 62 | "version": "0.12.7", 63 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs/-/tfjs-0.12.7.tgz", 64 | "integrity": "sha512-sGqnS7+Zj4SK6ap+fdFDGgddQf7l9RJBkWJc36frwP2F4LmFQQ5ED4+Wq7cBM1LzuyNq0p3pREWBbCfab0pnyw==", 65 | "requires": { 66 | "@tensorflow/tfjs-converter": "0.5.9", 67 | "@tensorflow/tfjs-core": "0.12.17", 68 | "@tensorflow/tfjs-layers": "0.7.5" 69 | } 70 | }, 71 | "@tensorflow/tfjs-converter": { 72 | "version": "0.5.9", 73 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-converter/-/tfjs-converter-0.5.9.tgz", 74 | "integrity": "sha512-48sw17WffIoPYTN2gNZ5HWvjKLtQYXrSy+mqaZtiWaRYVjDzJdla6g7dPAL77MR2rxQAfVYMXg8GRDBmkzyBDw==", 75 | "requires": { 76 | "@types/long": "3.0.32", 77 | "protobufjs": "6.8.8" 78 | } 79 | }, 80 | "@tensorflow/tfjs-core": { 81 | "version": "0.12.17", 82 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-0.12.17.tgz", 83 | "integrity": "sha512-CgFazQpGB21n1LRSxgyMwy0cN6WtuUPBP2W75zk6Rw+gFUXb8ZNh7fhn4nObjgKeIka36TI9MvT1FYrY+z150w==", 84 | "requires": { 85 | "@types/seedrandom": "2.4.27", 86 | "@types/webgl-ext": "0.0.29", 87 | "@types/webgl2": "0.0.4", 88 | "seedrandom": "2.4.4" 89 | } 90 | }, 91 | "@tensorflow/tfjs-layers": { 92 | "version": "0.7.5", 93 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-layers/-/tfjs-layers-0.7.5.tgz", 94 | "integrity": "sha512-JIo4l0yEIfYi+quJG71wAeCP9tgXICg/MIOstowfCVGTHKh8oBVEm39bAI/zyTYYtFVLHeQSvY2KuRCN2h0nBg==" 95 | }, 96 | "@tensorflow/tfjs-node": { 97 | "version": "0.1.17", 98 | "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-node/-/tfjs-node-0.1.17.tgz", 99 | "integrity": "sha512-NCTmf87u0XhZBE4lAHGxmjQneZrkkQRZCyUmSlFo4LRfkRIrFT+QJYIonJ/tJof8NtCNLRq9yVS/d5x+FvqntA==", 100 | "requires": { 101 | "@tensorflow/tfjs": "0.12.7", 102 | "adm-zip": "0.4.11", 103 | "bindings": "1.3.0", 104 | "progress": "2.0.0", 105 | "rimraf": "2.6.2", 106 | "tar": "4.4.6" 107 | } 108 | }, 109 | "@types/long": { 110 | "version": "3.0.32", 111 | "resolved": "https://registry.npmjs.org/@types/long/-/long-3.0.32.tgz", 112 | "integrity": "sha512-ZXyOOm83p7X8p3s0IYM3VeueNmHpkk/yMlP8CLeOnEcu6hIwPH7YjZBvhQkR0ZFS2DqZAxKtJ/M5fcuv3OU5BA==" 113 | }, 114 | "@types/node": { 115 | "version": "10.11.2", 116 | "resolved": "https://registry.npmjs.org/@types/node/-/node-10.11.2.tgz", 117 | "integrity": "sha512-XubfQDIg88PGJ7netQPf3QOKHF7Xht4WXGtg5W7cGBeQs9ETbYKwfchR9o+tRRA9iLTQ7nAre85M205JbYsjJA==" 118 | }, 119 | "@types/seedrandom": { 120 | "version": "2.4.27", 121 | "resolved": "https://registry.npmjs.org/@types/seedrandom/-/seedrandom-2.4.27.tgz", 122 | "integrity": "sha1-nbVjk33YaRX2kJK8QyWdL0hXjkE=" 123 | }, 124 | "@types/webgl-ext": { 125 | "version": "0.0.29", 126 | "resolved": "https://registry.npmjs.org/@types/webgl-ext/-/webgl-ext-0.0.29.tgz", 127 | "integrity": "sha512-ZlVjDQU5Vlc9hF4LGdDldujZUf0amwlwGv1RI2bfvdrEHIl6X/7MZVpemJUjS7NxD9XaKfE8SlFrxsfXpUkt/A==" 128 | }, 129 | "@types/webgl2": { 130 | "version": "0.0.4", 131 | "resolved": "https://registry.npmjs.org/@types/webgl2/-/webgl2-0.0.4.tgz", 132 | "integrity": "sha512-PACt1xdErJbMUOUweSrbVM7gSIYm1vTncW2hF6Os/EeWi6TXYAYMPp+8v6rzHmypE5gHrxaxZNXgMkJVIdZpHw==" 133 | }, 134 | "adm-zip": { 135 | "version": "0.4.11", 136 | "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", 137 | "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==" 138 | }, 139 | "axios": { 140 | "version": "0.18.0", 141 | "resolved": "http://registry.npmjs.org/axios/-/axios-0.18.0.tgz", 142 | "integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=", 143 | "requires": { 144 | "follow-redirects": "1.5.8", 145 | "is-buffer": "1.1.6" 146 | } 147 | }, 148 | "balanced-match": { 149 | "version": "1.0.0", 150 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 151 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 152 | }, 153 | "bindings": { 154 | "version": "1.3.0", 155 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", 156 | "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" 157 | }, 158 | "brace-expansion": { 159 | "version": "1.1.11", 160 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 161 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 162 | "requires": { 163 | "balanced-match": "1.0.0", 164 | "concat-map": "0.0.1" 165 | } 166 | }, 167 | "chownr": { 168 | "version": "1.1.1", 169 | "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", 170 | "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==" 171 | }, 172 | "concat-map": { 173 | "version": "0.0.1", 174 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 175 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 176 | }, 177 | "debug": { 178 | "version": "3.1.0", 179 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 180 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 181 | "requires": { 182 | "ms": "2.0.0" 183 | } 184 | }, 185 | "follow-redirects": { 186 | "version": "1.5.8", 187 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.8.tgz", 188 | "integrity": "sha512-sy1mXPmv7kLAMKW/8XofG7o9T+6gAjzdZK4AJF6ryqQYUa/hnzgiypoeUecZ53x7XiqKNEpNqLtS97MshW2nxg==", 189 | "requires": { 190 | "debug": "3.1.0" 191 | } 192 | }, 193 | "fs-minipass": { 194 | "version": "1.2.5", 195 | "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", 196 | "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", 197 | "requires": { 198 | "minipass": "2.3.4" 199 | } 200 | }, 201 | "fs.realpath": { 202 | "version": "1.0.0", 203 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 204 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 205 | }, 206 | "glob": { 207 | "version": "7.1.3", 208 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", 209 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", 210 | "requires": { 211 | "fs.realpath": "1.0.0", 212 | "inflight": "1.0.6", 213 | "inherits": "2.0.3", 214 | "minimatch": "3.0.4", 215 | "once": "1.4.0", 216 | "path-is-absolute": "1.0.1" 217 | } 218 | }, 219 | "inflight": { 220 | "version": "1.0.6", 221 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 222 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 223 | "requires": { 224 | "once": "1.4.0", 225 | "wrappy": "1.0.2" 226 | } 227 | }, 228 | "inherits": { 229 | "version": "2.0.3", 230 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 231 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 232 | }, 233 | "is-buffer": { 234 | "version": "1.1.6", 235 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 236 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" 237 | }, 238 | "lodash": { 239 | "version": "4.17.11", 240 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", 241 | "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" 242 | }, 243 | "long": { 244 | "version": "4.0.0", 245 | "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", 246 | "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" 247 | }, 248 | "memoize": { 249 | "version": "0.1.1", 250 | "resolved": "https://registry.npmjs.org/memoize/-/memoize-0.1.1.tgz", 251 | "integrity": "sha1-0mWjRYvlzjvyVJmLMKmVq5FmiiQ=", 252 | "requires": { 253 | "tosource": "1.0.0" 254 | } 255 | }, 256 | "minimatch": { 257 | "version": "3.0.4", 258 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 259 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 260 | "requires": { 261 | "brace-expansion": "1.1.11" 262 | } 263 | }, 264 | "minimist": { 265 | "version": "0.0.8", 266 | "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 267 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 268 | }, 269 | "minipass": { 270 | "version": "2.3.4", 271 | "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz", 272 | "integrity": "sha512-mlouk1OHlaUE8Odt1drMtG1bAJA4ZA6B/ehysgV0LUIrDHdKgo1KorZq3pK0b/7Z7LJIQ12MNM6aC+Tn6lUZ5w==", 273 | "requires": { 274 | "safe-buffer": "5.1.2", 275 | "yallist": "3.0.2" 276 | } 277 | }, 278 | "minizlib": { 279 | "version": "1.1.0", 280 | "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", 281 | "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", 282 | "requires": { 283 | "minipass": "2.3.4" 284 | } 285 | }, 286 | "mkdirp": { 287 | "version": "0.5.1", 288 | "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 289 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 290 | "requires": { 291 | "minimist": "0.0.8" 292 | } 293 | }, 294 | "mnist-data": { 295 | "version": "1.2.6", 296 | "resolved": "https://registry.npmjs.org/mnist-data/-/mnist-data-1.2.6.tgz", 297 | "integrity": "sha1-poZd4XCdCsCJp93uc5jCvX6EJAQ=", 298 | "requires": { 299 | "underscore": "1.9.1" 300 | } 301 | }, 302 | "ms": { 303 | "version": "2.0.0", 304 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 305 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 306 | }, 307 | "node-remote-plot": { 308 | "version": "1.2.0", 309 | "resolved": "https://registry.npmjs.org/node-remote-plot/-/node-remote-plot-1.2.0.tgz", 310 | "integrity": "sha512-92hjrWiusikN/Eem+LSJ/gqmraJ6QIEUlk+ZRz12o8IkrqsFros5TPqxVHM530ahDZm4t6vm1KnIZFWgNZYWsQ==", 311 | "requires": { 312 | "axios": "0.18.0" 313 | } 314 | }, 315 | "once": { 316 | "version": "1.4.0", 317 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 318 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 319 | "requires": { 320 | "wrappy": "1.0.2" 321 | } 322 | }, 323 | "path-is-absolute": { 324 | "version": "1.0.1", 325 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 326 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 327 | }, 328 | "progress": { 329 | "version": "2.0.0", 330 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 331 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" 332 | }, 333 | "protobufjs": { 334 | "version": "6.8.8", 335 | "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.8.8.tgz", 336 | "integrity": "sha512-AAmHtD5pXgZfi7GMpllpO3q1Xw1OYldr+dMUlAnffGTAhqkg72WdmSY71uKBF/JuyiKs8psYbtKrhi0ASCD8qw==", 337 | "requires": { 338 | "@protobufjs/aspromise": "1.1.2", 339 | "@protobufjs/base64": "1.1.2", 340 | "@protobufjs/codegen": "2.0.4", 341 | "@protobufjs/eventemitter": "1.1.0", 342 | "@protobufjs/fetch": "1.1.0", 343 | "@protobufjs/float": "1.0.2", 344 | "@protobufjs/inquire": "1.1.0", 345 | "@protobufjs/path": "1.1.2", 346 | "@protobufjs/pool": "1.1.0", 347 | "@protobufjs/utf8": "1.1.0", 348 | "@types/long": "4.0.0", 349 | "@types/node": "10.11.2", 350 | "long": "4.0.0" 351 | }, 352 | "dependencies": { 353 | "@types/long": { 354 | "version": "4.0.0", 355 | "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.0.tgz", 356 | "integrity": "sha512-1w52Nyx4Gq47uuu0EVcsHBxZFJgurQ+rTKS3qMHxR1GY2T8c2AJYd6vZoZ9q1rupaDjU0yT+Jc2XTyXkjeMA+Q==" 357 | } 358 | } 359 | }, 360 | "rimraf": { 361 | "version": "2.6.2", 362 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", 363 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", 364 | "requires": { 365 | "glob": "7.1.3" 366 | } 367 | }, 368 | "safe-buffer": { 369 | "version": "5.1.2", 370 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 371 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 372 | }, 373 | "seedrandom": { 374 | "version": "2.4.4", 375 | "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-2.4.4.tgz", 376 | "integrity": "sha512-9A+PDmgm+2du77B5i0Ip2cxOqqHjgNxnBgglxLcX78A2D6c2rTo61z4jnVABpF4cKeDMDG+cmXXvdnqse2VqMA==" 377 | }, 378 | "shuffle-seed": { 379 | "version": "1.1.6", 380 | "resolved": "https://registry.npmjs.org/shuffle-seed/-/shuffle-seed-1.1.6.tgz", 381 | "integrity": "sha1-UzwSaDurO0+j6HUfxOViFGdEJgs=", 382 | "requires": { 383 | "seedrandom": "2.4.4" 384 | } 385 | }, 386 | "tar": { 387 | "version": "4.4.6", 388 | "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.6.tgz", 389 | "integrity": "sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg==", 390 | "requires": { 391 | "chownr": "1.1.1", 392 | "fs-minipass": "1.2.5", 393 | "minipass": "2.3.4", 394 | "minizlib": "1.1.0", 395 | "mkdirp": "0.5.1", 396 | "safe-buffer": "5.1.2", 397 | "yallist": "3.0.2" 398 | } 399 | }, 400 | "tosource": { 401 | "version": "1.0.0", 402 | "resolved": "https://registry.npmjs.org/tosource/-/tosource-1.0.0.tgz", 403 | "integrity": "sha1-QtiN0RZhi88A1hBt1URvNCeQL/E=" 404 | }, 405 | "underscore": { 406 | "version": "1.9.1", 407 | "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", 408 | "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" 409 | }, 410 | "wrappy": { 411 | "version": "1.0.2", 412 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 413 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 414 | }, 415 | "yallist": { 416 | "version": "3.0.2", 417 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", 418 | "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" 419 | } 420 | } 421 | } 422 | -------------------------------------------------------------------------------- /regressions/cars.csv: -------------------------------------------------------------------------------- 1 | passedemissions,mpg,cylinders,displacement,horsepower,weight,acceleration,modelyear,carname 2 | FALSE,18,8,307,130,1.752,12,70,chevrolet chevelle malibu 3 | FALSE,15,8,350,165,1.8465,11.5,70,buick skylark 320 4 | FALSE,18,8,318,150,1.718,11,70,plymouth satellite 5 | FALSE,16,8,304,150,1.7165,12,70,amc rebel sst 6 | FALSE,17,8,302,140,1.7245,10.5,70,ford torino 7 | FALSE,15,8,429,198,2.1705,10,70,ford galaxie 500 8 | FALSE,14,8,454,220,2.177,9,70,chevrolet impala 9 | FALSE,14,8,440,215,2.156,8.5,70,plymouth fury iii 10 | FALSE,14,8,455,225,2.2125,10,70,pontiac catalina 11 | FALSE,15,8,390,190,1.925,8.5,70,amc ambassador dpl 12 | FALSE,15,8,383,170,1.7815,10,70,dodge challenger se 13 | FALSE,14,8,340,160,1.8045,8,70,plymouth 'cuda 340 14 | FALSE,15,8,400,150,1.8805,9.5,70,chevrolet monte carlo 15 | FALSE,14,8,455,225,1.543,10,70,buick estate wagon (sw) 16 | TRUE,24,4,113,95,1.186,15,70,toyota corona mark ii 17 | TRUE,22,6,198,95,1.4165,15.5,70,plymouth duster 18 | FALSE,18,6,199,97,1.387,15.5,70,amc hornet 19 | TRUE,21,6,200,85,1.2935,16,70,ford maverick 20 | TRUE,27,4,97,88,1.065,14.5,70,datsun pl510 21 | TRUE,26,4,97,46,0.9175,20.5,70,volkswagen 1131 deluxe sedan 22 | TRUE,25,4,110,87,1.336,17.5,70,peugeot 504 23 | TRUE,24,4,107,90,1.215,14.5,70,audi 100 ls 24 | TRUE,25,4,104,95,1.1875,17.5,70,saab 99e 25 | TRUE,26,4,121,113,1.117,12.5,70,bmw 2002 26 | TRUE,21,6,199,90,1.324,15,70,amc gremlin 27 | FALSE,10,8,360,215,2.3075,14,70,ford f250 28 | FALSE,10,8,307,200,2.188,15,70,chevy c20 29 | FALSE,11,8,318,210,2.191,13.5,70,dodge d200 30 | FALSE,9,8,304,193,2.366,18.5,70,hi 1200d 31 | TRUE,27,4,97,88,1.065,14.5,71,datsun pl510 32 | TRUE,28,4,140,90,1.132,15.5,71,chevrolet vega 2300 33 | TRUE,25,4,113,95,1.114,14,71,toyota corona 34 | TRUE,19,6,232,100,1.317,13,71,amc gremlin 35 | FALSE,16,6,225,105,1.7195,15.5,71,plymouth satellite custom 36 | FALSE,17,6,250,100,1.6645,15.5,71,chevrolet chevelle malibu 37 | TRUE,19,6,250,88,1.651,15.5,71,ford torino 500 38 | FALSE,18,6,232,100,1.644,15.5,71,amc matador 39 | FALSE,14,8,350,165,2.1045,12,71,chevrolet impala 40 | FALSE,14,8,400,175,2.232,11.5,71,pontiac catalina brougham 41 | FALSE,14,8,351,153,2.077,13.5,71,ford galaxie 500 42 | FALSE,14,8,318,150,2.048,13,71,plymouth fury iii 43 | FALSE,12,8,383,180,2.4775,11.5,71,dodge monaco (sw) 44 | FALSE,13,8,400,170,2.373,12,71,ford country squire (sw) 45 | FALSE,13,8,400,175,2.57,12,71,pontiac safari (sw) 46 | FALSE,18,6,258,110,1.481,13.5,71,amc hornet sportabout (sw) 47 | TRUE,22,4,140,72,1.204,19,71,chevrolet vega (sw) 48 | TRUE,19,6,250,100,1.641,15,71,pontiac firebird 49 | FALSE,18,6,250,88,1.5695,14.5,71,ford mustang 50 | TRUE,23,4,122,86,1.11,14,71,mercury capri 2000 51 | TRUE,28,4,116,90,1.0615,14,71,opel 1900 52 | TRUE,30,4,79,70,1.037,19.5,71,peugeot 304 53 | TRUE,30,4,88,76,1.0325,14.5,71,fiat 124b 54 | TRUE,31,4,71,65,0.8865,19,71,toyota corolla 1200 55 | TRUE,35,4,72,69,0.8065,18,71,datsun 1200 56 | TRUE,27,4,97,60,0.917,19,71,volkswagen model 111 57 | TRUE,26,4,91,70,0.9775,20.5,71,plymouth cricket 58 | TRUE,24,4,113,95,1.139,15.5,72,toyota corona hardtop 59 | TRUE,25,4,97.5,80,1.063,17,72,dodge colt hardtop 60 | TRUE,23,4,97,54,1.127,23.5,72,volkswagen type 3 61 | TRUE,20,4,140,90,1.204,19.5,72,chevrolet vega 62 | TRUE,21,4,122,86,1.113,16.5,72,ford pinto runabout 63 | FALSE,13,8,350,165,2.137,12,72,chevrolet impala 64 | FALSE,14,8,400,175,2.1925,12,72,pontiac catalina 65 | FALSE,15,8,318,150,2.0675,13.5,72,plymouth fury iii 66 | FALSE,14,8,351,153,2.0645,13,72,ford galaxie 500 67 | FALSE,17,8,304,150,1.836,11.5,72,amc ambassador sst 68 | FALSE,11,8,429,208,2.3165,11,72,mercury marquis 69 | FALSE,13,8,350,155,2.251,13.5,72,buick lesabre custom 70 | FALSE,12,8,350,160,2.228,13.5,72,oldsmobile delta 88 royale 71 | FALSE,13,8,400,190,2.211,12.5,72,chrysler newport royal 72 | TRUE,19,3,70,97,1.165,13.5,72,mazda rx2 coupe 73 | FALSE,15,8,304,150,1.946,12.5,72,amc matador (sw) 74 | FALSE,13,8,307,130,2.049,14,72,chevrolet chevelle concours (sw) 75 | FALSE,13,8,302,140,2.147,16,72,ford gran torino (sw) 76 | FALSE,14,8,318,150,2.0385,14,72,plymouth satellite custom (sw) 77 | FALSE,18,4,121,112,1.4665,14.5,72,volvo 145e (sw) 78 | TRUE,22,4,121,76,1.2555,18,72,volkswagen 411 (sw) 79 | TRUE,21,4,120,87,1.4895,19.5,72,peugeot 504 (sw) 80 | TRUE,26,4,96,69,1.0945,18,72,renault 12 (sw) 81 | TRUE,22,4,122,86,1.1975,16,72,ford pinto (sw) 82 | TRUE,28,4,97,92,1.144,17,72,datsun 510 (sw) 83 | TRUE,23,4,120,97,1.253,14.5,72,toyouta corona mark ii (sw) 84 | TRUE,28,4,98,80,1.082,15,72,dodge colt (sw) 85 | TRUE,27,4,97,88,1.05,16.5,72,toyota corolla 1600 (sw) 86 | FALSE,13,8,350,175,2.05,13,73,buick century 350 87 | FALSE,14,8,304,150,1.836,11.5,73,amc matador 88 | FALSE,13,8,350,145,1.994,13,73,chevrolet malibu 89 | FALSE,14,8,302,137,2.021,14.5,73,ford gran torino 90 | FALSE,15,8,318,150,1.8885,12.5,73,dodge coronet custom 91 | FALSE,12,8,429,198,2.476,11.5,73,mercury marquis brougham 92 | FALSE,13,8,400,150,2.232,12,73,chevrolet caprice classic 93 | FALSE,13,8,351,158,2.1815,13,73,ford ltd 94 | FALSE,14,8,318,150,2.1185,14.5,73,plymouth fury gran sedan 95 | FALSE,13,8,440,215,2.3675,11,73,chrysler new yorker brougham 96 | FALSE,12,8,455,225,2.4755,11,73,buick electra 225 custom 97 | FALSE,13,8,360,175,1.9105,11,73,amc ambassador brougham 98 | FALSE,18,6,225,105,1.5605,16.5,73,plymouth valiant 99 | FALSE,16,6,250,100,1.639,18,73,chevrolet nova custom 100 | FALSE,18,6,232,100,1.4725,16,73,amc hornet 101 | FALSE,18,6,250,88,1.5105,16.5,73,ford maverick 102 | TRUE,23,6,198,95,1.452,16,73,plymouth duster 103 | TRUE,26,4,97,46,0.975,21,73,volkswagen super beetle 104 | FALSE,11,8,400,150,2.4985,14,73,chevrolet impala 105 | FALSE,12,8,400,167,2.453,12.5,73,ford country 106 | FALSE,13,8,360,170,2.327,13,73,plymouth custom suburb 107 | FALSE,12,8,350,180,2.2495,12.5,73,oldsmobile vista cruiser 108 | FALSE,18,6,232,100,1.3945,15,73,amc gremlin 109 | TRUE,20,4,97,88,1.1395,19,73,toyota carina 110 | TRUE,21,4,140,72,1.2005,19.5,73,chevrolet vega 111 | TRUE,22,4,108,94,1.1895,16.5,73,datsun 610 112 | FALSE,18,3,70,90,1.062,13.5,73,maxda rx3 113 | TRUE,19,4,122,85,1.155,18.5,73,ford pinto 114 | TRUE,21,6,155,107,1.236,14,73,mercury capri v6 115 | TRUE,26,4,98,90,1.1325,15.5,73,fiat 124 sport coupe 116 | FALSE,15,8,350,145,2.041,13,73,chevrolet monte carlo s 117 | FALSE,16,8,400,230,2.139,9.5,73,pontiac grand prix 118 | TRUE,29,4,68,49,0.9335,19.5,73,fiat 128 119 | TRUE,24,4,116,75,1.079,15.5,73,opel manta 120 | TRUE,20,4,114,91,1.291,14,73,audi 100ls 121 | TRUE,19,4,121,112,1.434,15.5,73,volvo 144ea 122 | FALSE,15,8,318,150,1.6995,11,73,dodge dart custom 123 | TRUE,24,4,121,110,1.33,14,73,saab 99le 124 | TRUE,20,6,156,122,1.4035,13.5,73,toyota mark ii 125 | FALSE,11,8,350,180,1.832,11,73,oldsmobile omega 126 | TRUE,20,6,198,95,1.551,16.5,74,plymouth duster 127 | TRUE,19,6,232,100,1.4505,16,74,amc hornet 128 | FALSE,15,6,250,100,1.668,17,74,chevrolet nova 129 | TRUE,31,4,79,67,0.975,19,74,datsun b210 130 | TRUE,26,4,122,80,1.2255,16.5,74,ford pinto 131 | TRUE,32,4,71,65,0.918,21,74,toyota corolla 1200 132 | TRUE,25,4,140,75,1.271,17,74,chevrolet vega 133 | FALSE,16,6,250,100,1.8905,17,74,chevrolet chevelle malibu classic 134 | FALSE,16,6,258,110,1.816,18,74,amc matador 135 | FALSE,18,6,225,105,1.8065,16.5,74,plymouth satellite sebring 136 | FALSE,16,8,302,140,2.0705,14,74,ford gran torino 137 | FALSE,13,8,350,150,2.3495,14.5,74,buick century luxus (sw) 138 | FALSE,14,8,318,150,2.2285,13.5,74,dodge coronet custom (sw) 139 | FALSE,14,8,302,140,2.319,16,74,ford gran torino (sw) 140 | FALSE,14,8,304,150,2.1285,15.5,74,amc matador (sw) 141 | TRUE,29,4,98,83,1.1095,16.5,74,audi fox 142 | TRUE,26,4,79,67,0.9815,15.5,74,volkswagen dasher 143 | TRUE,26,4,97,78,1.15,14.5,74,opel manta 144 | TRUE,31,4,76,52,0.8245,16.5,74,toyota corona 145 | TRUE,32,4,83,61,1.0015,19,74,datsun 710 146 | TRUE,28,4,90,75,1.0625,14.5,74,dodge colt 147 | TRUE,24,4,90,75,1.054,15.5,74,fiat 128 148 | TRUE,26,4,116,75,1.123,14,74,fiat 124 tc 149 | TRUE,24,4,120,97,1.2445,15,74,honda civic 150 | TRUE,26,4,108,93,1.1955,15.5,74,subaru 151 | TRUE,31,4,79,67,1,16,74,fiat x1.9 152 | TRUE,19,6,225,95,1.632,16,75,plymouth valiant custom 153 | FALSE,18,6,250,105,1.7295,16,75,chevrolet nova 154 | FALSE,15,6,250,72,1.716,21,75,mercury monarch 155 | FALSE,15,6,250,72,1.579,19.5,75,ford maverick 156 | FALSE,16,8,400,170,2.334,11.5,75,pontiac catalina 157 | FALSE,15,8,350,145,2.22,14,75,chevrolet bel air 158 | FALSE,16,8,318,150,2.249,14.5,75,plymouth grand fury 159 | FALSE,14,8,351,148,2.3285,13.5,75,ford ltd 160 | FALSE,17,6,231,110,1.9535,21,75,buick century 161 | FALSE,16,6,250,105,1.9485,18.5,75,chevroelt chevelle malibu 162 | FALSE,15,6,258,110,1.865,19,75,amc matador 163 | FALSE,18,6,225,95,1.8925,19,75,plymouth fury 164 | TRUE,21,6,231,110,1.5195,15,75,buick skyhawk 165 | TRUE,20,8,262,110,1.6105,13.5,75,chevrolet monza 2+2 166 | FALSE,13,8,302,129,1.5845,12,75,ford mustang ii 167 | TRUE,29,4,97,75,1.0855,16,75,toyota corolla 168 | TRUE,23,4,140,83,1.3195,17,75,ford pinto 169 | TRUE,20,6,232,100,1.457,16,75,amc gremlin 170 | TRUE,23,4,140,78,1.296,18.5,75,pontiac astro 171 | TRUE,24,4,134,96,1.351,13.5,75,toyota corona 172 | TRUE,25,4,90,71,1.1115,16.5,75,volkswagen dasher 173 | TRUE,24,4,119,97,1.2725,17,75,datsun 710 174 | FALSE,18,6,171,97,1.492,14.5,75,ford pinto 175 | TRUE,29,4,90,70,0.9685,14,75,volkswagen rabbit 176 | TRUE,19,6,232,90,1.6055,17,75,amc pacer 177 | TRUE,23,4,115,95,1.347,15,75,audi 100ls 178 | TRUE,23,4,120,88,1.4785,17,75,peugeot 504 179 | TRUE,22,4,121,98,1.4725,14.5,75,volvo 244dl 180 | TRUE,25,4,121,115,1.3355,13.5,75,saab 99le 181 | TRUE,33,4,91,53,0.8975,17.5,75,honda civic cvcc 182 | TRUE,28,4,107,86,1.232,15.5,76,fiat 131 183 | TRUE,25,4,116,81,1.11,16.9,76,opel 1900 184 | TRUE,25,4,140,92,1.286,14.9,76,capri ii 185 | TRUE,26,4,98,79,1.1275,17.7,76,dodge colt 186 | TRUE,27,4,101,83,1.101,15.3,76,renault 12tl 187 | FALSE,17.5,8,305,140,2.1075,13,76,chevrolet chevelle malibu classic 188 | FALSE,16,8,318,150,2.095,13,76,dodge coronet brougham 189 | FALSE,15.5,8,304,120,1.981,13.9,76,amc matador 190 | FALSE,14.5,8,351,152,2.1075,12.8,76,ford gran torino 191 | TRUE,22,6,225,100,1.6165,15.4,76,plymouth valiant 192 | TRUE,22,6,250,105,1.6765,14.5,76,chevrolet nova 193 | TRUE,24,6,200,81,1.506,17.6,76,ford maverick 194 | TRUE,22.5,6,232,90,1.5425,17.6,76,amc hornet 195 | TRUE,29,4,85,52,1.0175,22.2,76,chevrolet chevette 196 | TRUE,24.5,4,98,60,1.082,22.1,76,chevrolet woody 197 | TRUE,29,4,90,70,0.9685,14.2,76,vw rabbit 198 | TRUE,33,4,91,53,0.8975,17.4,76,honda civic 199 | TRUE,20,6,225,100,1.8255,17.7,76,dodge aspen se 200 | FALSE,18,6,250,78,1.787,21,76,ford granada ghia 201 | TRUE,18.5,6,250,110,1.8225,16.2,76,pontiac ventura sj 202 | FALSE,17.5,6,258,95,1.5965,17.8,76,amc pacer d/l 203 | TRUE,29.5,4,97,71,0.9125,12.2,76,volkswagen rabbit 204 | TRUE,32,4,85,70,0.995,17,76,datsun b-210 205 | TRUE,28,4,97,75,1.0775,16.4,76,toyota corolla 206 | TRUE,26.5,4,140,72,1.2825,13.6,76,ford pinto 207 | TRUE,20,4,130,102,1.575,15.7,76,volvo 245 208 | FALSE,13,8,318,150,1.97,13.2,76,plymouth volare premier v8 209 | TRUE,19,4,120,88,1.635,21.9,76,peugeot 504 210 | TRUE,19,6,156,108,1.465,15.5,76,toyota mark ii 211 | FALSE,16.5,6,168,120,1.91,16.7,76,mercedes-benz 280s 212 | FALSE,16.5,8,350,180,2.19,12.1,76,cadillac seville 213 | FALSE,13,8,350,145,2.0275,12,76,chevy c10 214 | FALSE,13,8,302,130,1.935,15,76,ford f108 215 | FALSE,13,8,318,150,1.8775,14,76,dodge d100 216 | TRUE,31.5,4,98,68,1.0225,18.5,77,honda accord cvcc 217 | TRUE,30,4,111,80,1.0775,14.8,77,buick opel isuzu deluxe 218 | TRUE,36,4,79,58,0.9125,18.6,77,renault 5 gtl 219 | TRUE,25.5,4,122,96,1.15,15.5,77,plymouth arrow gs 220 | TRUE,33.5,4,85,70,0.9725,16.8,77,datsun f-10 hatchback 221 | FALSE,17.5,8,305,145,1.94,12.5,77,chevrolet caprice classic 222 | FALSE,17,8,260,110,2.03,19,77,oldsmobile cutlass supreme 223 | FALSE,15.5,8,318,145,2.07,13.7,77,dodge monaco brougham 224 | FALSE,15,8,302,130,2.1475,14.9,77,mercury cougar brougham 225 | FALSE,17.5,6,250,110,1.76,16.4,77,chevrolet concours 226 | TRUE,20.5,6,231,105,1.7125,16.9,77,buick skylark 227 | TRUE,19,6,225,100,1.815,17.7,77,plymouth volare custom 228 | TRUE,18.5,6,250,98,1.7625,19,77,ford granada 229 | FALSE,16,8,400,180,2.11,11.1,77,pontiac grand prix lj 230 | FALSE,15.5,8,350,170,2.0825,11.4,77,chevrolet monte carlo landau 231 | FALSE,15.5,8,400,190,2.1625,12.2,77,chrysler cordoba 232 | FALSE,16,8,351,149,2.1675,14.5,77,ford thunderbird 233 | TRUE,29,4,97,78,0.97,14.5,77,volkswagen rabbit custom 234 | TRUE,24.5,4,151,88,1.37,16,77,pontiac sunbird coupe 235 | TRUE,26,4,97,75,1.1325,18.2,77,toyota corolla liftback 236 | TRUE,25.5,4,140,89,1.3775,15.8,77,ford mustang ii 2+2 237 | TRUE,30.5,4,98,63,1.0255,17,77,chevrolet chevette 238 | TRUE,33.5,4,98,83,1.0375,15.9,77,dodge colt m/m 239 | TRUE,30,4,97,67,0.9925,16.4,77,subaru dl 240 | TRUE,30.5,4,97,78,1.095,14.1,77,volkswagen dasher 241 | TRUE,22,6,146,97,1.4075,14.5,77,datsun 810 242 | TRUE,21.5,4,121,110,1.3,12.8,77,bmw 320i 243 | TRUE,21.5,3,80,110,1.36,13.5,77,mazda rx-4 244 | TRUE,43.1,4,90,48,0.9925,21.5,78,volkswagen rabbit custom diesel 245 | TRUE,36.1,4,98,66,0.9,14.4,78,ford fiesta 246 | TRUE,32.8,4,78,52,0.9925,19.4,78,mazda glc deluxe 247 | TRUE,39.4,4,85,70,1.035,18.6,78,datsun b210 gx 248 | TRUE,36.1,4,91,60,0.9,16.4,78,honda civic cvcc 249 | TRUE,19.9,8,260,110,1.6825,15.5,78,oldsmobile cutlass salon brougham 250 | TRUE,19.4,8,318,140,1.8675,13.2,78,dodge diplomat 251 | TRUE,20.2,8,302,139,1.785,12.8,78,mercury monarch ghia 252 | TRUE,19.2,6,231,105,1.7675,19.2,78,pontiac phoenix lj 253 | TRUE,20.5,6,200,95,1.5775,18.2,78,chevrolet malibu 254 | TRUE,20.2,6,200,85,1.4825,15.8,78,ford fairmont (auto) 255 | TRUE,25.1,4,140,88,1.36,15.4,78,ford fairmont (man) 256 | TRUE,20.5,6,225,100,1.715,17.2,78,plymouth volare 257 | TRUE,19.4,6,232,90,1.605,17.2,78,amc concord 258 | TRUE,20.6,6,231,105,1.69,15.8,78,buick century special 259 | TRUE,20.8,6,200,85,1.535,16.7,78,mercury zephyr 260 | TRUE,18.6,6,225,110,1.81,18.7,78,dodge aspen 261 | TRUE,18.1,6,258,120,1.705,15.1,78,amc concord d/l 262 | TRUE,19.2,8,305,145,1.7125,13.2,78,chevrolet monte carlo landau 263 | FALSE,17.7,6,231,165,1.7225,13.4,78,buick regal sport coupe (turbo) 264 | TRUE,18.1,8,302,139,1.6025,11.2,78,ford futura 265 | FALSE,17.5,8,318,140,2.04,13.7,78,dodge magnum xe 266 | TRUE,30,4,98,68,1.0775,16.5,78,chevrolet chevette 267 | TRUE,27.5,4,134,95,1.28,14.2,78,toyota corona 268 | TRUE,27.2,4,119,97,1.15,14.7,78,datsun 510 269 | TRUE,30.9,4,105,75,1.115,14.5,78,dodge omni 270 | TRUE,21.1,4,134,95,1.2575,14.8,78,toyota celica gt liftback 271 | TRUE,23.2,4,156,105,1.3725,16.7,78,plymouth sapporo 272 | TRUE,23.8,4,151,85,1.4275,17.6,78,oldsmobile starfire sx 273 | TRUE,23.9,4,119,97,1.2025,14.9,78,datsun 200-sx 274 | TRUE,20.3,5,131,103,1.415,15.9,78,audi 5000 275 | FALSE,17,6,163,125,1.57,13.6,78,volvo 264gl 276 | TRUE,21.6,4,121,115,1.3975,15.7,78,saab 99gle 277 | FALSE,16.2,6,163,133,1.705,15.8,78,peugeot 604sl 278 | TRUE,31.5,4,89,71,0.995,14.9,78,volkswagen scirocco 279 | TRUE,29.5,4,98,68,1.0675,16.6,78,honda accord lx 280 | TRUE,21.5,6,231,115,1.6225,15.4,79,pontiac lemans v6 281 | TRUE,19.8,6,200,85,1.495,18.2,79,mercury zephyr 6 282 | TRUE,22.3,4,140,88,1.445,17.3,79,ford fairmont 4 283 | TRUE,20.2,6,232,90,1.6325,18.2,79,amc concord dl 6 284 | TRUE,20.6,6,225,110,1.68,16.6,79,dodge aspen 6 285 | FALSE,17,8,305,130,1.92,15.4,79,chevrolet caprice classic 286 | FALSE,17.6,8,302,129,1.8625,13.4,79,ford ltd landau 287 | FALSE,16.5,8,351,138,1.9775,13.2,79,mercury grand marquis 288 | TRUE,18.2,8,318,135,1.915,15.2,79,dodge st. regis 289 | FALSE,16.9,8,350,155,2.18,14.9,79,buick estate wagon (sw) 290 | FALSE,15.5,8,351,142,2.027,14.3,79,ford country squire (sw) 291 | TRUE,19.2,8,267,125,1.8025,15,79,chevrolet malibu classic (sw) 292 | TRUE,18.5,8,360,150,1.97,13,79,chrysler lebaron town @ country (sw) 293 | TRUE,31.9,4,89,71,0.9625,14,79,vw rabbit custom 294 | TRUE,34.1,4,86,65,0.9875,15.2,79,maxda glc deluxe 295 | TRUE,35.7,4,98,80,0.9575,14.4,79,dodge colt hatchback custom 296 | TRUE,27.4,4,121,80,1.335,15,79,amc spirit dl 297 | TRUE,25.4,5,183,77,1.765,20.1,79,mercedes benz 300d 298 | TRUE,23,8,350,125,1.95,17.4,79,cadillac eldorado 299 | TRUE,27.2,4,141,71,1.595,24.8,79,peugeot 504 300 | TRUE,23.9,8,260,90,1.71,22.2,79,oldsmobile cutlass salon brougham 301 | TRUE,34.2,4,105,70,1.1,13.2,79,plymouth horizon 302 | TRUE,34.5,4,105,70,1.075,14.9,79,plymouth horizon tc3 303 | TRUE,31.8,4,85,65,1.01,19.2,79,datsun 210 304 | TRUE,37.3,4,91,69,1.065,14.7,79,fiat strada custom 305 | TRUE,28.4,4,151,90,1.335,16,79,buick skylark limited 306 | TRUE,28.8,6,173,115,1.2975,11.3,79,chevrolet citation 307 | TRUE,26.8,6,173,115,1.35,12.9,79,oldsmobile omega brougham 308 | TRUE,33.5,4,151,90,1.278,13.2,79,pontiac phoenix 309 | TRUE,41.5,4,98,76,1.072,14.7,80,vw rabbit 310 | TRUE,38.1,4,89,60,0.984,18.8,80,toyota corolla tercel 311 | TRUE,32.1,4,98,70,1.06,15.5,80,chevrolet chevette 312 | TRUE,37.2,4,86,65,1.0095,16.4,80,datsun 310 313 | TRUE,28,4,151,90,1.339,16.5,80,chevrolet citation 314 | TRUE,26.4,4,140,88,1.435,18.1,80,ford fairmont 315 | TRUE,24.3,4,151,90,1.5015,20.1,80,amc concord 316 | TRUE,19.1,6,225,90,1.6905,18.7,80,dodge aspen 317 | TRUE,34.3,4,97,78,1.094,15.8,80,audi 4000 318 | TRUE,29.8,4,134,90,1.3555,15.5,80,toyota corona liftback 319 | TRUE,31.3,4,120,75,1.271,17.5,80,mazda 626 320 | TRUE,37,4,119,92,1.217,15,80,datsun 510 hatchback 321 | TRUE,32.2,4,108,75,1.1325,15.2,80,toyota corolla 322 | TRUE,46.6,4,86,65,1.055,17.9,80,mazda glc 323 | TRUE,27.9,4,156,105,1.4,14.4,80,dodge colt 324 | TRUE,40.8,4,85,65,1.055,19.2,80,datsun 210 325 | TRUE,44.3,4,90,48,1.0425,21.7,80,vw rabbit c (diesel) 326 | TRUE,43.4,4,90,48,1.1675,23.7,80,vw dasher (diesel) 327 | TRUE,36.4,5,121,67,1.475,19.9,80,audi 5000s (diesel) 328 | TRUE,30,4,146,67,1.625,21.8,80,mercedes-benz 240d 329 | TRUE,44.6,4,91,67,0.925,13.8,80,honda civic 1500 gl 330 | TRUE,33.8,4,97,67,1.0725,18,80,subaru dl 331 | TRUE,29.8,4,89,62,0.9225,15.3,80,vokswagen rabbit 332 | TRUE,32.7,6,168,132,1.455,11.4,80,datsun 280-zx 333 | TRUE,23.7,3,70,100,1.21,12.5,80,mazda rx-7 gs 334 | TRUE,35,4,122,88,1.25,15.1,80,triumph tr7 coupe 335 | TRUE,32.4,4,107,72,1.145,17,80,honda accord 336 | TRUE,27.2,4,135,84,1.245,15.7,81,plymouth reliant 337 | TRUE,26.6,4,151,84,1.3175,16.4,81,buick skylark 338 | TRUE,25.8,4,156,92,1.31,14.4,81,dodge aries wagon (sw) 339 | TRUE,23.5,6,173,110,1.3625,12.6,81,chevrolet citation 340 | TRUE,30,4,135,84,1.1925,12.9,81,plymouth reliant 341 | TRUE,39.1,4,79,58,0.8775,16.9,81,toyota starlet 342 | TRUE,39,4,86,64,0.9375,16.4,81,plymouth champ 343 | TRUE,35.1,4,81,60,0.88,16.1,81,honda civic 1300 344 | TRUE,32.3,4,97,67,1.0325,17.8,81,subaru 345 | TRUE,37,4,85,65,0.9875,19.4,81,datsun 210 mpg 346 | TRUE,37.7,4,89,62,1.025,17.3,81,toyota tercel 347 | TRUE,34.1,4,91,68,0.9925,16,81,mazda glc 4 348 | TRUE,34.7,4,105,63,1.1075,14.9,81,plymouth horizon 4 349 | TRUE,34.4,4,98,65,1.0225,16.2,81,ford escort 4w 350 | TRUE,29.9,4,98,65,1.19,20.7,81,ford escort 2h 351 | TRUE,33,4,105,74,1.095,14.2,81,volkswagen jetta 352 | TRUE,33.7,4,107,75,1.105,14.4,81,honda prelude 353 | TRUE,32.4,4,108,75,1.175,16.8,81,toyota corolla 354 | TRUE,32.9,4,119,100,1.3075,14.8,81,datsun 200sx 355 | TRUE,31.6,4,120,74,1.3175,18.3,81,mazda 626 356 | TRUE,28.1,4,141,80,1.615,20.4,81,peugeot 505s turbo diesel 357 | TRUE,30.7,6,145,76,1.58,19.6,81,volvo diesel 358 | TRUE,25.4,6,168,116,1.45,12.6,81,toyota cressida 359 | TRUE,24.2,6,146,120,1.465,13.8,81,datsun 810 maxima 360 | TRUE,22.4,6,231,110,1.7075,15.8,81,buick century 361 | TRUE,26.6,8,350,105,1.8625,19,81,oldsmobile cutlass ls 362 | TRUE,20.2,6,200,88,1.53,17.1,81,ford granada gl 363 | FALSE,17.6,6,225,85,1.7325,16.6,81,chrysler lebaron salon 364 | TRUE,28,4,112,88,1.3025,19.6,82,chevrolet cavalier 365 | TRUE,27,4,112,88,1.32,18.6,82,chevrolet cavalier wagon 366 | TRUE,34,4,112,88,1.1975,18,82,chevrolet cavalier 2-door 367 | TRUE,31,4,112,85,1.2875,16.2,82,pontiac j2000 se hatchback 368 | TRUE,29,4,135,84,1.2625,16,82,dodge aries se 369 | TRUE,27,4,151,90,1.3675,18,82,pontiac phoenix 370 | TRUE,24,4,140,92,1.4325,16.4,82,ford fairmont futura 371 | TRUE,36,4,105,74,0.99,15.3,82,volkswagen rabbit l 372 | TRUE,37,4,91,68,1.0125,18.2,82,mazda glc custom l 373 | TRUE,31,4,91,68,0.985,17.6,82,mazda glc custom 374 | TRUE,38,4,105,63,1.0625,14.7,82,plymouth horizon miser 375 | TRUE,36,4,98,70,1.0625,17.3,82,mercury lynx l 376 | TRUE,36,4,120,88,1.08,14.5,82,nissan stanza xe 377 | TRUE,36,4,107,75,1.1025,14.5,82,honda accord 378 | TRUE,34,4,108,70,1.1225,16.9,82,toyota corolla 379 | TRUE,38,4,91,67,0.9825,15,82,honda civic 380 | TRUE,32,4,91,67,0.9825,15.7,82,honda civic (auto) 381 | TRUE,38,4,91,67,0.9975,16.2,82,datsun 310 gx 382 | TRUE,25,6,181,110,1.4725,16.4,82,buick century limited 383 | TRUE,38,6,262,85,1.5075,17,82,oldsmobile cutlass ciera (diesel) 384 | TRUE,26,4,156,92,1.2925,14.5,82,chrysler lebaron medallion 385 | TRUE,22,6,232,112,1.4175,14.7,82,ford granada l 386 | TRUE,32,4,144,96,1.3325,13.9,82,toyota celica gt 387 | TRUE,36,4,135,84,1.185,13,82,dodge charger 2.2 388 | TRUE,27,4,151,90,1.475,17.3,82,chevrolet camaro 389 | TRUE,27,4,140,86,1.395,15.6,82,ford mustang gl 390 | TRUE,44,4,97,52,1.065,24.6,82,vw pickup 391 | TRUE,32,4,135,84,1.1475,11.6,82,dodge rampage 392 | TRUE,28,4,120,79,1.3125,18.6,82,ford ranger 393 | TRUE,31,4,119,82,1.36,19.4,82,chevy s-10 --------------------------------------------------------------------------------