Add basic data preprocessing code
This commit is contained in:
parent
daf2eae8d5
commit
dac3ddf27c
126
js/main.js
126
js/main.js
|
@ -22,8 +22,14 @@ var f1data = {
|
||||||
// data/circuits.csv
|
// data/circuits.csv
|
||||||
function fetchCircuits(callback) {
|
function fetchCircuits(callback) {
|
||||||
d3.csv('data/circuits.csv', function(data) {
|
d3.csv('data/circuits.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
f1data.circuits = data;
|
data.forEach(function(d, i) {
|
||||||
|
d["circuitId"] = parseInt(d["circuitId"]);
|
||||||
|
d["lat"] = parseFloat(d["lat"]);
|
||||||
|
d["lng"] = parseFloat(d["lng"]);
|
||||||
|
d["alt"] = parseInt(d["alt"]);
|
||||||
|
});
|
||||||
|
f1data.circuits = data; // Store results
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -31,8 +37,15 @@ function fetchCircuits(callback) {
|
||||||
// data/constructorResults.csv
|
// data/constructorResults.csv
|
||||||
function fetchConstructorResults(callback) {
|
function fetchConstructorResults(callback) {
|
||||||
d3.csv('data/constructorResults.csv', function(data) {
|
d3.csv('data/constructorResults.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
f1data.constructorResults = data;
|
data.forEach(function(d, i) {
|
||||||
|
d["constructorId"] = parseInt(d["constructorId"]);
|
||||||
|
d["constructorResultsId"] = parseInt(d["constructorResultsId"]);
|
||||||
|
d["points"] = parseInt(d["points"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
d["status"] = parseInt(d["status"]);
|
||||||
|
});
|
||||||
|
f1data.constructorResults = data; // Store results
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -40,7 +53,10 @@ function fetchConstructorResults(callback) {
|
||||||
// data/constructors.csv
|
// data/constructors.csv
|
||||||
function fetchConstructors(callback) {
|
function fetchConstructors(callback) {
|
||||||
d3.csv('data/constructors.csv', function(data) {
|
d3.csv('data/constructors.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["constructorId"] = parseInt(d["constructorId"]);
|
||||||
|
});
|
||||||
f1data.constructors = data;
|
f1data.constructors = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -49,7 +65,15 @@ function fetchConstructors(callback) {
|
||||||
// data/constructorStandings.csv
|
// data/constructorStandings.csv
|
||||||
function fetchConstructorStandings(callback) {
|
function fetchConstructorStandings(callback) {
|
||||||
d3.csv('data/constructorStandings.csv', function(data) {
|
d3.csv('data/constructorStandings.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["constructorId"] = parseInt(d["constructorId"]);
|
||||||
|
d["constructorStandingsId"] = parseInt(d["constructorStandingsId"]);
|
||||||
|
d["points"] = parseInt(d["points"]);
|
||||||
|
d["position"] = parseInt(d["position"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
d["wins"] = parseInt(d["wins"]);
|
||||||
|
});
|
||||||
f1data.constructorStandings = data;
|
f1data.constructorStandings = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -58,7 +82,12 @@ function fetchConstructorStandings(callback) {
|
||||||
// data/drivers.csv
|
// data/drivers.csv
|
||||||
function fetchDrivers(callback) {
|
function fetchDrivers(callback) {
|
||||||
d3.csv('data/drivers.csv', function(data) {
|
d3.csv('data/drivers.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["dob"] = new Date(d["dob"]);
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["number"] = parseInt(d["number"]);
|
||||||
|
});
|
||||||
f1data.drivers = data;
|
f1data.drivers = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -67,7 +96,15 @@ function fetchDrivers(callback) {
|
||||||
// data/driverStandings.csv
|
// data/driverStandings.csv
|
||||||
function fetchDriverStandings(callback) {
|
function fetchDriverStandings(callback) {
|
||||||
d3.csv('data/driverStandings.csv', function(data) {
|
d3.csv('data/driverStandings.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["driverStandingsId"] = parseInt(d["driverStandingsId"]);
|
||||||
|
d["points"] = parseInt(d["points"]);
|
||||||
|
d["position"] = parseInt(d["position"]);
|
||||||
|
d["raceID"] = parseInt(d["raceId"]);
|
||||||
|
d["wins"] = parseInt(d["wins"]);
|
||||||
|
});
|
||||||
f1data.driverStandings = data;
|
f1data.driverStandings = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -76,7 +113,14 @@ function fetchDriverStandings(callback) {
|
||||||
// data/lapTimes.csv
|
// data/lapTimes.csv
|
||||||
function fetchLapTimes(callback) {
|
function fetchLapTimes(callback) {
|
||||||
d3.csv('data/lapTimes.csv', function(data) {
|
d3.csv('data/lapTimes.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["lap"] = parseInt(d["lap"]);
|
||||||
|
d["milliseconds"] = parseInt(d["milliseconds"]);
|
||||||
|
d["position"] = parseInt(d["position"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
});
|
||||||
f1data.lapTimes = data;
|
f1data.lapTimes = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -85,7 +129,15 @@ function fetchLapTimes(callback) {
|
||||||
// data/pitStops.csv
|
// data/pitStops.csv
|
||||||
function fetchPitStops(callback) {
|
function fetchPitStops(callback) {
|
||||||
d3.csv('data/pitStops.csv', function(data) {
|
d3.csv('data/pitStops.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["duration"] = parseFloat(d["duration"]);
|
||||||
|
d["lap"] = parseInt(d["lap"]);
|
||||||
|
d["milliseconds"] = parseInt(d["milliseconds"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
d["stop"] = parseInt(d["stop"]);
|
||||||
|
});
|
||||||
f1data.pitStops = data;
|
f1data.pitStops = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -94,7 +146,18 @@ function fetchPitStops(callback) {
|
||||||
// data/qualifying.csv
|
// data/qualifying.csv
|
||||||
function fetchQualifying(callback) {
|
function fetchQualifying(callback) {
|
||||||
d3.csv('data/qualifying.csv', function(data) {
|
d3.csv('data/qualifying.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["constructorId"] = parseInt(d["constructorId"]);
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["number"] = parseInt(d["number"]);
|
||||||
|
d["position"] = parseInt(d["position"]);
|
||||||
|
d["q1"] = new Date(d["q1"]);
|
||||||
|
d["q2"] = new Date(d["q2"]);
|
||||||
|
d["q3"] = new Date(d["q3"]);
|
||||||
|
d["qualifyId"] = parseInt(d["qualifyId"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
});
|
||||||
f1data.qualifying = data;
|
f1data.qualifying = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -103,7 +166,15 @@ function fetchQualifying(callback) {
|
||||||
// data/races.csv
|
// data/races.csv
|
||||||
function fetchRaces(callback) {
|
function fetchRaces(callback) {
|
||||||
d3.csv('data/races.csv', function(data) {
|
d3.csv('data/races.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["circuitId"] = parseInt(d["circuitId"]);
|
||||||
|
d["date"] = new Date(d["date"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
d["round"] = parseInt(d["round"]);
|
||||||
|
d["time"] = new Date(d["time"]);
|
||||||
|
d["year"] = parseInt(d["year"]);
|
||||||
|
});
|
||||||
f1data.races = data;
|
f1data.races = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -112,7 +183,26 @@ function fetchRaces(callback) {
|
||||||
// data/results.csv
|
// data/results.csv
|
||||||
function fetchResults(callback) {
|
function fetchResults(callback) {
|
||||||
d3.csv('data/results.csv', function(data) {
|
d3.csv('data/results.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["constructorId"] = parseInt(d["constructorId"]);
|
||||||
|
d["driverId"] = parseInt(d["driverId"]);
|
||||||
|
d["fastestLap"] = parseInt(d["fastestLap"]);
|
||||||
|
d["fastestLapSpeed"] = parseFloat(d["fastestLapSpeed"]);
|
||||||
|
d["fastestLapTime"] = new Date(d["fastestLapTime"]);
|
||||||
|
d["grid"] = parseInt(d["grid"]);
|
||||||
|
d["laps"] = parseInt(d["laps"]);
|
||||||
|
d["milliseconds"] = parseInt(d["milliseconds"]);
|
||||||
|
d["number"] = parseInt(d["number"]);
|
||||||
|
d["points"] = parseInt(d["points"]);
|
||||||
|
d["position"] = parseInt(d["position"]);
|
||||||
|
d["positionOrder"] = parseInt(d["positionOrder"]);
|
||||||
|
d["raceId"] = parseInt(d["raceId"]);
|
||||||
|
d["rank"] = parseInt(d["rank"]);
|
||||||
|
d["resultId"] = parseInt(d["resultId"]);
|
||||||
|
d["statusId"] = parseInt(d["statusId"]);
|
||||||
|
d["time"] = new Date(d["time"]);
|
||||||
|
});
|
||||||
f1data.results = data;
|
f1data.results = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -121,7 +211,10 @@ function fetchResults(callback) {
|
||||||
// data/seasons.csv
|
// data/seasons.csv
|
||||||
function fetchSeasons(callback) {
|
function fetchSeasons(callback) {
|
||||||
d3.csv('data/seasons.csv', function(data) {
|
d3.csv('data/seasons.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["year"] = parseInt(d["year"]);
|
||||||
|
});
|
||||||
f1data.seasons = data;
|
f1data.seasons = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
@ -130,7 +223,10 @@ function fetchSeasons(callback) {
|
||||||
// data/status.csv
|
// data/status.csv
|
||||||
function fetchStatus(callback) {
|
function fetchStatus(callback) {
|
||||||
d3.csv('data/status.csv', function(data) {
|
d3.csv('data/status.csv', function(data) {
|
||||||
// TODO: process data
|
// preprocess data
|
||||||
|
data.forEach(function(d, i) {
|
||||||
|
d["statusId"] = parseInt(d["statusId"]);
|
||||||
|
});
|
||||||
f1data.status = data;
|
f1data.status = data;
|
||||||
callback(null); // Tell the queue we're done.
|
callback(null); // Tell the queue we're done.
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue