Class I Rail Freight Fuel Consumption and Travel

JohnSnowLabs

Files Size Format Created Updated License Source
2 59kB csv zip 3 months ago John Snow Labs Standard License John Snow Labs Bureau of Transportation Statistics
Download

Data Files

File Description Size Last changed Download
class-i-rail-freight-fuel-consumption-and-travel-csv 2kB csv (2kB) , json (18kB)
class-i-rail-freight-fuel-consumption-and-travel_zip Compressed versions of dataset. Includes normalized CSV and JSON data with original data and datapackage.json. 7kB zip (7kB)

class-i-rail-freight-fuel-consumption-and-travel-csv  

This is a preview version. There might be more data in the original version.

Field information

Field Name Order Type (Format) Description
Year 1 date (%Y-%m-%d) Year of data
Number_Of_Locomotives_In_Use 2 integer Number of locomotive in use in Class I rail freight
Number_Of_Freight_Cars_In_Use 3 integer Number of freight cars in use Class I rail freight
Million_Miles_Travelled_By_Freight_Train 4 integer Distance travelled by freight train in million miles
Million_Miles_Made_By_Locomotive_Unit 5 integer Distance travelled by locomotive units in million miles
Million_Miles_Made_By_Freight_Car 6 integer Distance travelled by freight cars in million miles
Average_Miles_Travelled_Per_Gallon_By_Freight_Trains 7 number Average distance travelled per gallon of fuel by freight train
Average_Miles_Travelled_Per_Gallon_By_Freight_Cars 8 number Average distance travelled per gallon of fuel by freight cars
Fuel_Consumed_In_Million_Gallons_Excluding_Passenger_And_Work_Trains 9 integer Fuel consumed in Class I rail freight excluding passenger and work trains in million gallons
Revenue_On_Miles_Per_Gallon_Of_Fuel_Consumed 10 integer Revenue genenrated per gallon of fuel consumed in Class I rail freight
Average_Miles_Travelled_Per_Locomotive_In_Thousands 11 number Average miles travelled per locomotive in Class I rail freight in thousands
Average_Fuel_Consumed_Per_Locomotive_In_Thousand_Gallons 12 number Average fuel consumed per locomotive in Class I rail freight in thousands gallons

Import into your tool

Data-cli or just data is the program to get and post your data with the datahub.
Use data with the datahub.io almost like you use git with the github. Here are installation instructions.

data get https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel
tree JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel
# Get a list of dataset's resources
curl -L -s https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/datapackage.json | grep path

# Get resources

curl -L https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/r/0.csv

curl -L https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/r/1.zip

If you are using R here's how to get the data you want quickly loaded:

install.packages("jsonlite", repos="https://cran.rstudio.com/")
library("jsonlite")

json_file <- 'https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/datapackage.json'
json_data <- fromJSON(paste(readLines(json_file), collapse=""))

# get list of all resources:
print(json_data$resources$name)

# print all tabular data(if exists any)
for(i in 1:length(json_data$resources$datahub$type)){
  if(json_data$resources$datahub$type[i]=='derived/csv'){
    path_to_file = json_data$resources$path[i]
    data <- read.csv(url(path_to_file))
    print(data)
  }
}

Note: You might need to run the script with root permissions if you are running on Linux machine

Install the Frictionless Data data package library and the pandas itself:

pip install datapackage
pip install pandas

Now you can use the datapackage in the Pandas:

import datapackage
import pandas as pd

data_url = 'https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/datapackage.json'

# to load Data Package into storage
package = datapackage.Package(data_url)

# to load only tabular data
resources = package.resources
for resource in resources:
    if resource.tabular:
        data = pd.read_csv(resource.descriptor['path'])
        print (data)

For Python, first install the `datapackage` library (all the datasets on DataHub are Data Packages):

pip install datapackage

To get Data Package into your Python environment, run following code:

from datapackage import Package

package = Package('https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/datapackage.json')

# print list of all resources:
print(package.resource_names)

# print processed tabular data (if exists any)
for resource in package.resources:
    if resource.descriptor['datahub']['type'] == 'derived/csv':
        print(resource.read())

If you are using JavaScript, please, follow instructions below:

Install data.js module using npm:

  $ npm install data.js

Once the package is installed, use the following code snippet:

const {Dataset} = require('data.js')

const path = 'https://datahub.io/JohnSnowLabs/class-i-rail-freight-fuel-consumption-and-travel/datapackage.json'

// We're using self-invoking function here as we want to use async-await syntax:
;(async () => {
  const dataset = await Dataset.load(path)
  // get list of all resources:
  for (const id in dataset.resources) {
    console.log(dataset.resources[id]._descriptor.name)
  }
  // get all tabular data(if exists any)
  for (const id in dataset.resources) {
    if (dataset.resources[id]._descriptor.format === "csv") {
      const file = dataset.resources[id]
      // Get a raw stream
      const stream = await file.stream()
      // entire file as a buffer (be careful with large files!)
      const buffer = await file.buffer
      // print data
      stream.pipe(process.stdout)
    }
  }
})()
Datapackage.json