from fastprogress.fastprogress import master_bar, progress_bar
from time import sleep
import pandas as pd
import aiking.data
from aiking.data.external import *
from aiking.ml.structured import *
import pathlib
from fastcore.all import *
from fastcore.imports import *
import os
import sys
import sklearn
import numpy as np
from sklearn.model_selection import cross_val_score, cross_val_predict, KFold, train_test_split
from sklearn.metrics import ConfusionMatrixDisplay, accuracy_score, plot_confusion_matrix, confusion_matrix
from sklearn.model_selection import cross_val_score, cross_val_predict, TimeSeriesSplit
from IPython.display import display
from sklearn.pipeline import make_pipeline
from sklearn.ensemble import RandomForestRegressor
from sklearn.impute import SimpleImputer
from sklearn.preprocessing import StandardScaler, OneHotEncoder
Using Fastprogress
Shows the usage of the fastprogress library
Imports
= untar_data("kaggle_competitions::bluebook-bulldozer-remix"); path
path = pd.read_csv(path/"Train/Train.csv", low_memory=False,parse_dates=['saledate'], infer_datetime_format=True); df_train.head()
df_train = pd.read_csv(path/"Valid/Valid.csv", parse_dates=['saledate'], infer_datetime_format=True); df_test.head()
df_test = (df_train[['saledate']].max() - pd.Timedelta(value=120, unit='D')).values[0]
validation_date_start = df_train[df_train['saledate'] < validation_date_start], df_train[df_train['saledate']>= validation_date_start]
df_model, df_valid df_model.head()
SalesID | SalePrice | MachineID | ModelID | datasource | auctioneerID | YearMade | MachineHoursCurrentMeter | UsageBand | saledate | ... | Undercarriage_Pad_Width | Stick_Length | Thumb | Pattern_Changer | Grouser_Type | Backhoe_Mounting | Blade_Type | Travel_Controls | Differential_Type | Steering_Controls | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
5 rows × 53 columns
def get_model_pipeline(max_n_cat=0,
=None,
cat_dict={'class': StandardScaler},
scale_dict={'class':NumericalEncoder,'categories':None},
cat_num_dict={'class':OneHotEncoder,'handle_unknown':'ignore'},
cat_dummy_dict={'class':SimpleImputer, 'strategy':'median'},
imputer_dict
):= (get_default_feature_def,
layer_spec_default
{'skip_flds':None,
'ignored_flds':None,
'max_n_cat':max_n_cat,
'na_exclude_cols':[],
'scale_var_num':True,
'scale_var_cat':False,
'scale_dict':scale_dict,
'cat_num_dict':cat_num_dict,
'cat_dummy_dict':cat_dummy_dict,
'imputer_dict':imputer_dict,
'include_time_cols':True,
'keep_dt_cols':False,
'cat_dict':cat_dict
}
)
= [layer_spec_default]
layer_specs = Proc(layer_specs=layer_specs); #proc.fit_transform(X)
proc = RandomForestRegressor()
model = make_pipeline(proc, model); pipeline
pipeline return pipeline
= 0
max_n_cat = get_cat_dict(df_train, max_n_cat=max_n_cat)
cat_dict display_cat(cat_dict)
0 | 1 | |
---|---|---|
0 | UsageBand | [High, Low, Medium] |
1 | fiModelDesc | [100C, 104, 1066, 1066E, 1080, 1080B, 1088, 1088CK, 1088LT, 1088TTL, 10B, 10C, 10DG, 110, 1105, 110S, 110TLB, 110Z, 110Z-2, 112, 112E, 112F, 115, 1150, 1150B, 1150BLGP, 1150C, 1150D, 1150E, 1150ELT, 1150G, 1150GLGP, 1150GLT, 1150H, 1150HLGP, 1150HLT, 1150HWT, 1150K, 1150KLGPSERIES3, 1150KWT, 1150KXLT, 1150KXLTIII, 115SRDZ, 115Z, 115ZIII, 115ZIV, 115ZIV-2, 115ZV, 116, 1166, 118, 1187C, 1188, 1188LC, 1188P, 118B, 118C, 11B, 11C, 12, 120, 120B, 120C, 120CLC, 120D, 120E, 120G, 120H, 120HNA, 120LC, 120M , 125, 125A, 125B, 125C, 125CKBNA, 1280, 1280B, 1288, 12E, 12F, 12G, 12H, 12HNA, 12JX, 130, 1300, 1300D, 130G, 130LC, 130LX, 1340XL, 135, 135C, 135CRTS, 135H, 135HNA, 135MSR SPIN ACE, 135SR, 135SRLC, ...] |
2 | fiBaseModel | [10, 100, 104, 1066, 1080, 1088, 10DG, 11, 110, 1105, 112, 115, 1150, 116, 1166, 118, 1187, 1188, 12, 120, 125, 1280, 1288, 130, 1300, 1340, 135, 137, 14, 140, 1400, 143, 1450, 15, 150, 1500, 153, 155, 1550, 16, 160, 1600, 163, 165, 1650, 166, 17, 170, 1700, 1737, 1740, 175, 1750, 1760XL, 17ZTS, 18, 1800, 1818, 1825, 1830, 1835, 1838, 1840, 1845, 185, 1850, 190, 1900, 198, 20, 200, 2000, 2022, 2026, 2040, 2042, 2044, 205, 2050, 2054, 2060, 2060XL, 2064, 2066, 2070, 2074, 2076, 208, 2086, 2095, 2099, 21, 210, 2105, 2109, 211, 212, 213, 213LC, 214, ...] |
3 | fiSecondaryDesc | [ MSR SPIN ACE, #NAME?, -2, -3, -5, -5L, -6, -7, 0.7, 1, 2, 3, 5, 7, A, AA, AB, AG, AW, AX, B, B , BEC, BL, BLGP, BLGPPS, BZ, BZD, C, C , CE, CH, CK, CKB, CL, CLR, CM, CR, CS, CX, D, DC, DL, DT, DX, DXT, DZ, E, EG, EL, ESS, EST, EW, EX, F, FR, G, GT, H, H , H90, HAG, HD, HDS, HDSL, HF, HL, HLGP, HLS, HX, HZ, IV, J, JX, K, L, LC, LC7A, LC7LR, LCD, LCH, LCLR, LCM, LD, LE, LGP, LR, LS, LT, LX, M, M , MC, MR, MRX, MSR, MSR SPIN ACE, MT, MU, MXT, ...] |
4 | fiModelSeries | [ III, #NAME?, -1, -1.50E+01, -11, -12, -15, -16, -17, -18, -1B, -1C, -1L, -2, -20, -21, -21A, -2A, -2C, -2E, -2LC, -2N, -3, -3C, -3EO, -3H, -3L, -3LC, -3LK, -3M, -3MC, -3PT, -4, -5, -5A, -5E, -5F, -5H, -5L, -5LC, -6, -6A, -6B, -6C, -6E, -6K, -6LC, -6LK, -7, -7B, -7E, -7K, -8, -8E, 1, 12, 14FT, 15, 16, 17, 18, 1970, 2, 20, 21KomStat, 21KomStatII, 22, 2B, 2T, 3, 3A, 3C, 4, 5, 5N, 6, 6.00E+00, 6F, 6L, 6LE, 6LK, 7, 7.00E+00, 7A, 7L, 8, A, AWS, D, D7, E, EX, Elite, FASTRRACK, G, GALEO, H, II, III, IV, ...] |
5 | fiModelDescriptor | [ 14FT, LGP, SUPER, XLT, XT, ZX, (BLADE RUNNER), 1, 2, 2.00E+00, 2N, 3, 3.00E+00, 3C, 3L, 3NO, 4WD, 4x4x4, 5, 6, 6K, 7, 7.00E+00, 7A, 8, A, AE0, AVANCE, B, BE, C, CK, CR, CRSB, CUSTOM, DA, DELUXE, DHP, DINGO, DLL, DT, DW, E, ESL, G, GALEO, H, H5, HD, HF, HSD, HT, High Lift, HighLift, II, III, IT, IV, K, K3, K5, KA, KBNA, L, LC, LC8, LCH, LCR, LCRTS, LE, LGP, LGPVP, LITRONIC, LK, LL, LM, LN, LR, LRC, LRR, LS, LT, LU, LX, LongReach, M, MC, ME, MH, N, NLC, NSUC, P, PLUS, PRO, RR, RTS, S, SA, SB, ...] |
6 | ProductSize | [Compact, Large, Large / Medium, Medium, Mini, Small] |
7 | fiProductClassDesc | [Backhoe Loader - 0.0 to 14.0 Ft Standard Digging Depth, Backhoe Loader - 14.0 to 15.0 Ft Standard Digging Depth, Backhoe Loader - 15.0 to 16.0 Ft Standard Digging Depth, Backhoe Loader - 16.0 + Ft Standard Digging Depth, Backhoe Loader - Unidentified, Hydraulic Excavator, Track - 0.0 to 2.0 Metric Tons, Hydraulic Excavator, Track - 11.0 to 12.0 Metric Tons, Hydraulic Excavator, Track - 12.0 to 14.0 Metric Tons, Hydraulic Excavator, Track - 14.0 to 16.0 Metric Tons, Hydraulic Excavator, Track - 150.0 to 300.0 Metric Tons, Hydraulic Excavator, Track - 16.0 to 19.0 Metric Tons, Hydraulic Excavator, Track - 19.0 to 21.0 Metric Tons, Hydraulic Excavator, Track - 2.0 to 3.0 Metric Tons, Hydraulic Excavator, Track - 21.0 to 24.0 Metric Tons, Hydraulic Excavator, Track - 24.0 to 28.0 Metric Tons, Hydraulic Excavator, Track - 28.0 to 33.0 Metric Tons, Hydraulic Excavator, Track - 3.0 to 4.0 Metric Tons, Hydraulic Excavator, Track - 300.0 + Metric Tons, Hydraulic Excavator, Track - 33.0 to 40.0 Metric Tons, Hydraulic Excavator, Track - 4.0 to 5.0 Metric Tons, Hydraulic Excavator, Track - 4.0 to 6.0 Metric Tons, Hydraulic Excavator, Track - 40.0 to 50.0 Metric Tons, Hydraulic Excavator, Track - 5.0 to 6.0 Metric Tons, Hydraulic Excavator, Track - 50.0 to 66.0 Metric Tons, Hydraulic Excavator, Track - 6.0 to 8.0 Metric Tons, Hydraulic Excavator, Track - 66.0 to 90.0 Metric Tons, Hydraulic Excavator, Track - 8.0 to 11.0 Metric Tons, Hydraulic Excavator, Track - 90.0 to 150.0 Metric Tons, Hydraulic Excavator, Track - Unidentified, Hydraulic Excavator, Track - Unidentified (Compact Construction), Motorgrader - 130.0 to 145.0 Horsepower, Motorgrader - 145.0 to 170.0 Horsepower, Motorgrader - 170.0 to 200.0 Horsepower, Motorgrader - 200.0 + Horsepower, Motorgrader - 45.0 to 130.0 Horsepower, Motorgrader - Unidentified, Skid Steer Loader - 0.0 to 701.0 Lb Operating Capacity, Skid Steer Loader - 1251.0 to 1351.0 Lb Operating Capacity, Skid Steer Loader - 1351.0 to 1601.0 Lb Operating Capacity, Skid Steer Loader - 1601.0 to 1751.0 Lb Operating Capacity, Skid Steer Loader - 1751.0 to 2201.0 Lb Operating Capacity, Skid Steer Loader - 2201.0 to 2701.0 Lb Operating Capacity, Skid Steer Loader - 2701.0+ Lb Operating Capacity, Skid Steer Loader - 701.0 to 976.0 Lb Operating Capacity, Skid Steer Loader - 976.0 to 1251.0 Lb Operating Capacity, Skid Steer Loader - Unidentified, Track Type Tractor, Dozer - 105.0 to 130.0 Horsepower, Track Type Tractor, Dozer - 130.0 to 160.0 Horsepower, Track Type Tractor, Dozer - 160.0 to 190.0 Horsepower, Track Type Tractor, Dozer - 190.0 to 260.0 Horsepower, Track Type Tractor, Dozer - 20.0 to 75.0 Horsepower, Track Type Tractor, Dozer - 260.0 + Horsepower, Track Type Tractor, Dozer - 75.0 to 85.0 Horsepower, Track Type Tractor, Dozer - 85.0 to 105.0 Horsepower, Track Type Tractor, Dozer - Unidentified, Wheel Loader - 0.0 to 40.0 Horsepower, Wheel Loader - 100.0 to 110.0 Horsepower, Wheel Loader - 1000.0 + Horsepower, Wheel Loader - 110.0 to 120.0 Horsepower, Wheel Loader - 120.0 to 135.0 Horsepower, Wheel Loader - 135.0 to 150.0 Horsepower, Wheel Loader - 150.0 to 175.0 Horsepower, Wheel Loader - 175.0 to 200.0 Horsepower, Wheel Loader - 200.0 to 225.0 Horsepower, Wheel Loader - 225.0 to 250.0 Horsepower, Wheel Loader - 250.0 to 275.0 Horsepower, Wheel Loader - 275.0 to 350.0 Horsepower, Wheel Loader - 350.0 to 500.0 Horsepower, Wheel Loader - 40.0 to 60.0 Horsepower, Wheel Loader - 500.0 to 1000.0 Horsepower, Wheel Loader - 60.0 to 80.0 Horsepower, Wheel Loader - 80.0 to 90.0 Horsepower, Wheel Loader - 90.0 to 100.0 Horsepower, Wheel Loader - Unidentified] |
8 | state | [Alabama, Alaska, Arizona, Arkansas, California, Colorado, Connecticut, Delaware, Florida, Georgia, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, Nevada, New Hampshire, New Jersey, New Mexico, New York, North Carolina, North Dakota, Ohio, Oklahoma, Oregon, Pennsylvania, Puerto Rico, Rhode Island, South Carolina, South Dakota, Tennessee, Texas, Unspecified, Utah, Vermont, Virginia, Washington, Washington DC, West Virginia, Wisconsin, Wyoming] |
9 | ProductGroup | [BL, MG, SSL, TEX, TTT, WL] |
10 | ProductGroupDesc | [Backhoe Loaders, Motor Graders, Skid Steer Loaders, Track Excavators, Track Type Tractors, Wheel Loader] |
11 | Drive_System | [All Wheel Drive, Four Wheel Drive, No, Two Wheel Drive] |
12 | Enclosure | [EROPS, EROPS AC, EROPS w AC, NO ROPS, None or Unspecified, OROPS] |
13 | Forks | [None or Unspecified, Yes] |
14 | Pad_Type | [Grouser, None or Unspecified, Reversible, Street] |
15 | Ride_Control | [No, None or Unspecified, Yes] |
16 | Stick | [Extended, Standard] |
17 | Transmission | [AutoShift, Autoshift, Direct Drive, Hydrostatic, None or Unspecified, Powershift, Powershuttle, Standard] |
18 | Turbocharged | [None or Unspecified, Yes] |
19 | Blade_Extension | [None or Unspecified, Yes] |
20 | Blade_Width | [12', 13', 14', 16', <12', None or Unspecified] |
21 | Enclosure_Type | [High Profile, Low Profile, None or Unspecified] |
22 | Engine_Horsepower | [No, Variable] |
23 | Hydraulics | [2 Valve, 3 Valve, 4 Valve, Auxiliary, Base + 1 Function, Base + 2 Function, Base + 3 Function, Base + 4 Function, Base + 5 Function, Base + 6 Function, None or Unspecified, Standard] |
24 | Pushblock | [None or Unspecified, Yes] |
25 | Ripper | [Multi Shank, None or Unspecified, Single Shank, Yes] |
26 | Scarifier | [None or Unspecified, Yes] |
27 | Tip_Control | [None or Unspecified, Sideshift & Tip, Tip] |
28 | Tire_Size | [10 inch, 10", 13", 14", 15.5, 15.5", 17.5, 17.5", 20.5, 20.5", 23.1", 23.5, 23.5", 26.5, 29.5, 7.0", None or Unspecified] |
29 | Coupler | [Hydraulic, Manual, None or Unspecified] |
30 | Coupler_System | [None or Unspecified, Yes] |
31 | Grouser_Tracks | [None or Unspecified, Yes] |
32 | Hydraulics_Flow | [High Flow, None or Unspecified, Standard] |
33 | Track_Type | [Rubber, Steel] |
34 | Undercarriage_Pad_Width | [14 inch, 15 inch, 16 inch, 18 inch, 20 inch, 22 inch, 24 inch, 25 inch, 26 inch, 27 inch, 28 inch, 30 inch, 31 inch, 31.5 inch, 32 inch, 33 inch, 34 inch, 36 inch, None or Unspecified] |
35 | Stick_Length | [10' 10", 10' 2", 10' 6", 11' 0", 11' 10", 12' 10", 12' 4", 12' 8", 13' 10", 13' 7", 13' 9", 14' 1", 15' 4", 15' 9", 19' 8", 24' 3", 6' 3", 7' 10", 8' 10", 8' 2", 8' 4", 8' 6", 9' 10", 9' 2", 9' 5", 9' 6", 9' 7", 9' 8", None or Unspecified] |
36 | Thumb | [Hydraulic, Manual, None or Unspecified] |
37 | Pattern_Changer | [No, None or Unspecified, Yes] |
38 | Grouser_Type | [Double, Single, Triple] |
39 | Backhoe_Mounting | [None or Unspecified, Yes] |
40 | Blade_Type | [Angle, Coal, Landfill, No, None or Unspecified, PAT, Semi U, Straight, U, VPAT] |
41 | Travel_Controls | [1 Speed, 2 Pedal, Differential Steer, Finger Tip, Lever, None or Unspecified, Pedal] |
42 | Differential_Type | [Limited Slip, Locking, No Spin, Standard] |
43 | Steering_Controls | [Command Control, Conventional, Four Wheel Standard, No, Wheel] |
# def timeseries_cv(df_model, # Dataset for modelling training + validation
# sort_fld, # Field for sorting dataframe required for ordering timeseries split
# y_fld, # Field/colname for yaxis
# pipeline_callback_dict, #{'func': get_model_pipeline, 'func_kwargs':{'max_n_cat':0, 'cat_dict':None}}
# y_mod_func=None, # Function/ transformation applied to target variable
# scorers = {'r2':SCORERS['r2']}, # Scoring dict subset of sklearn scorer
# n_train=15000, # max-number of samples in training
# n_test=12000, # max-number of samples in testing
# n_splits=10): # number of splits
# df_model_tscv = df_model.sort_values(by=sort_fld)
# tscv = TimeSeriesSplit(gap=0, max_train_size=n_train, n_splits=n_splits, test_size=n_test)
# X_model_tscv = df_model_tscv.drop([y_fld], axis=1)
# y_model_tscv = y_mod_func(df_model_tscv[y_fld]) if y_mod_func else df_model_tscv[y_fld]
# set_id = 1
# score_dfs = []
# for train_idx, valid_idx in tscv.split(df_model_tscv):
# print(f"Executing for set : {set_id}")
# score_df = {}
# np.random.shuffle(train_idx)
# X_train_split, y_train_split = X_model_tscv.iloc[train_idx], y_model_tscv.iloc[train_idx]
# X_valid_split, y_valid_split = X_model_tscv.iloc[valid_idx], y_model_tscv.iloc[valid_idx]
# pipeline = pipeline_callback_dict['func'](**pipeline_callback_dict['func_kwargs'])
# pipeline.fit(X_train_split, y_train_split)
# score_df = get_score(pipeline, X_train_split, y_train_split, X_valid_split, y_valid_split, scorers=scorers)
# score_df['set'] = set_id
# score_df['train_start'] = X_train_split[sort_fld].min()
# score_df['train_end'] = X_train_split[sort_fld].max()
# score_df['valid_start'] = X_valid_split[sort_fld].min()
# score_df['valid_end'] = X_valid_split[sort_fld].max()
# set_id = set_id+1
# score_dfs.append(score_df)
# return pd.concat(score_dfs)
# mb = master_bar(range(10))
# for i in mb:
# for j in progress_bar(range(100), parent=mb):
# sleep(0.01)
# mb.child.comment = f'second bar stat'
# mb.main_bar.comment = f'first bar stat'
# mb.write(f'Finished loop {i}.')
= 'saledate'
sort_fld = 'SalePrice'
y_fld ={'func': get_model_pipeline, 'func_kwargs':{'max_n_cat':0, 'cat_dict':cat_dict}}
pipeline_callback_dict=np.log
y_mod_func= get_scorer_dict()
scorers =15000
n_train=12000
n_test=10
n_splits
# df_model_tscv = df_model.sort_values(by=sort_fld)
# tscv = TimeSeriesSplit(gap=0, max_train_size=n_train, n_splits=n_splits, test_size=n_test)
# X_model_tscv = df_model_tscv.drop([y_fld], axis=1)
# y_model_tscv = y_mod_func(df_model_tscv[y_fld]) if y_mod_func else df_model_tscv[y_fld]
# set_id = 1
# score_dfs = []
= df_model.sort_values(by=sort_fld); df_model_tscv.head()
df_model_tscv = TimeSeriesSplit(gap=0, max_train_size=n_train, n_splits=n_splits, test_size=n_test); tscv
tscv = df_model_tscv.drop([y_fld], axis=1)
X_model_tscv = y_mod_func(df_model_tscv[y_fld]) if y_mod_func else df_model_tscv[y_fld]
y_model_tscv = 1
set_id = [] score_dfs
# master_bar??
= progress_bar(tscv.split(df_model_tscv), total=n_splits)
mb = 1
set_id for train_idx, valid_idx in mb:
print(train_idx, valid_idx)
1)
sleep(# mb.update_bar(val=set_id)
= set_id + 1 set_id
100.00% [10/10 00:10<00:00]
[255213 255214 255215 ... 270210 270211 270212] [270213 270214 270215 ... 282210 282211 282212]
[267213 267214 267215 ... 282210 282211 282212] [282213 282214 282215 ... 294210 294211 294212]
[279213 279214 279215 ... 294210 294211 294212] [294213 294214 294215 ... 306210 306211 306212]
[291213 291214 291215 ... 306210 306211 306212] [306213 306214 306215 ... 318210 318211 318212]
[303213 303214 303215 ... 318210 318211 318212] [318213 318214 318215 ... 330210 330211 330212]
[315213 315214 315215 ... 330210 330211 330212] [330213 330214 330215 ... 342210 342211 342212]
[327213 327214 327215 ... 342210 342211 342212] [342213 342214 342215 ... 354210 354211 354212]
[339213 339214 339215 ... 354210 354211 354212] [354213 354214 354215 ... 366210 366211 366212]
[351213 351214 351215 ... 366210 366211 366212] [366213 366214 366215 ... 378210 378211 378212]
[363213 363214 363215 ... 378210 378211 378212] [378213 378214 378215 ... 390210 390211 390212]
# master_bar??
= display("Test", display_id=True) a
'Text Again'
"Not Text") a.update(
"Text Again") a.update(
= pd.DataFrame()
df = []
dfs = display(dfs, display_id=True)
a for i in range(10):
= df_model[:i]
df
dfs.append(df)
a.update(pd.concat(dfs))0.1) sleep(
SalesID | SalePrice | MachineID | ModelID | datasource | auctioneerID | YearMade | MachineHoursCurrentMeter | UsageBand | saledate | ... | Undercarriage_Pad_Width | Stick_Length | Thumb | Pattern_Changer | Grouser_Type | Backhoe_Mounting | Blade_Type | Travel_Controls | Differential_Type | Steering_Controls | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
5 | 1139255 | 26500 | 1001274 | 4605 | 121 | 3.0 | 2004 | 508.0 | Low | 2008-12-18 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
5 | 1139255 | 26500 | 1001274 | 4605 | 121 | 3.0 | 2004 | 508.0 | Low | 2008-12-18 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
6 | 1139256 | 21000 | 772701 | 1937 | 121 | 3.0 | 1993 | 11540.0 | High | 2004-08-26 | ... | None or Unspecified | None or Unspecified | None or Unspecified | None or Unspecified | Double | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
5 | 1139255 | 26500 | 1001274 | 4605 | 121 | 3.0 | 2004 | 508.0 | Low | 2008-12-18 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
6 | 1139256 | 21000 | 772701 | 1937 | 121 | 3.0 | 1993 | 11540.0 | High | 2004-08-26 | ... | None or Unspecified | None or Unspecified | None or Unspecified | None or Unspecified | Double | NaN | NaN | NaN | NaN | NaN |
7 | 1139261 | 27000 | 902002 | 3539 | 121 | 3.0 | 2001 | 4883.0 | High | 2005-11-17 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
0 | 1139246 | 66000 | 999089 | 3157 | 121 | 3.0 | 2004 | 68.0 | Low | 2006-11-16 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
1 | 1139248 | 57000 | 117657 | 77 | 121 | 3.0 | 1996 | 4640.0 | Low | 2004-03-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | Standard | Conventional |
2 | 1139249 | 10000 | 434808 | 7009 | 121 | 3.0 | 2001 | 2838.0 | High | 2004-02-26 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
3 | 1139251 | 38500 | 1026470 | 332 | 121 | 3.0 | 2001 | 3486.0 | High | 2011-05-19 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
4 | 1139253 | 11000 | 1057373 | 17311 | 121 | 3.0 | 2007 | 722.0 | Medium | 2009-07-23 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
5 | 1139255 | 26500 | 1001274 | 4605 | 121 | 3.0 | 2004 | 508.0 | Low | 2008-12-18 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
6 | 1139256 | 21000 | 772701 | 1937 | 121 | 3.0 | 1993 | 11540.0 | High | 2004-08-26 | ... | None or Unspecified | None or Unspecified | None or Unspecified | None or Unspecified | Double | NaN | NaN | NaN | NaN | NaN |
7 | 1139261 | 27000 | 902002 | 3539 | 121 | 3.0 | 2001 | 4883.0 | High | 2005-11-17 | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
8 | 1139272 | 21500 | 1036251 | 36003 | 121 | 3.0 | 2008 | 302.0 | Low | 2009-08-27 | ... | None or Unspecified | None or Unspecified | None or Unspecified | None or Unspecified | Double | NaN | NaN | NaN | NaN | NaN |
45 rows × 53 columns