---
id: "car"
slug: "car"
name: "Car"
domain: "Automotive & Fleet Management"
taskType: "multiclass_classification"
numRows: 1728
numColumns: 7
targetColumn: "car_acceptability"
primaryMetric: "Log-Loss"
primaryScore: "0.0231"
parquetUrl: "https://huggingface.co/datasets/carlahq/demo-tabular-benchmarks/resolve/main/data/car/car.parquet"
spreadsheetUrl: "https://docs.google.com/spreadsheets/d/10LzR2sscRiyAj25Tjse9Ev_QOpK6FpIWr_pHL6Ld35Q/edit?usp=sharing"
canonicalUrl: "https://carlahq.eu/datasets/car"
---

# Dataset: Car (car)

> The Car Evaluation dataset comprises 1,728 vehicle profiles evaluated across 6 categorical attributes covering price, maintenance, and technical capacity. It serves as a canonical multi-class classification benchmark to predict overall vehicle acceptability across four discrete tiers.

## Dataset Overview

| Attribute | Value |
| :--- | :--- |
| **Task Type** | `multiclass_classification` |
| **Business Domain** | Automotive & Fleet Management |
| **Target Column** | `car_acceptability` |
| **Rows (Instances)** | 1,728 |
| **Features (Columns)** | 7 |
| **Primary Evaluation Metric** | Log-Loss |
| **Best Benchmark Score** | **0.0231** |

## Business Decision Context
**Context:** Automotive dealerships, fleet procurement managers, and appraisal platforms evaluate multi-attribute vehicle trade-ins and inventory specifications to determine market readiness, customer appeal, and valuation tiers.
**Objective:** Accurately classify vehicle acceptability into four discrete market categories (unacceptable, acceptable, good, very good) based on physical attributes, operating costs, and safety ratings.
**Decision Impact:** Optimizes inventory acquisition margins and turnaround times. Misclassifying an unacceptable vehicle as acceptable (false positive) introduces unsellable, high-depreciation inventory, while under-rating premium vehicles (false negative) forfeits competitive deal volume and customer satisfaction.

## Feature Schema
| Column Name | Data Type | Role | Distinct Values | Missing Values (%) | Description |
| :--- | :--- | :--- | :--- | :--- | :--- |
| `car_acceptability` | `categorical` | target | 4 | 0 | Target categorical acceptability rating: unacc (unacceptable), acc (acceptable), good (good), vgood (very good). |
| `buying_price_tier` | `categorical` | feature | 4 | 0 | Relative purchase cost level of the vehicle (vhigh: very high, high: high, med: medium, low: low). |
| `maintenance_cost_tier` | `categorical` | feature | 4 | 0 | Relative ongoing maintenance and service expense level (vhigh: very high, high: high, med: medium, low: low). |
| `door_count` | `categorical` | feature | 4 | 0 | Categorical door count configuration of the vehicle (2, 3, 4, 5more). |
| `passenger_capacity` | `categorical` | feature | 3 | 0 | Maximum passenger seating capacity category (2, 4, more). |
| `luggage_boot_size` | `categorical` | feature | 3 | 0 | Trunk and cargo storage capacity classification (small, med, big). |
| `safety_rating` | `categorical` | feature | 3 | 0 | Evaluated passenger safety level category (low, med, high). |

## Empirical Benchmark Leaderboard
| Rank | Algorithm / Model | Model Family | Runtime | Accuracy | ROC AUC | F1-Score |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| 1 | **pipeline.Pipeline(imputation=openmlstudy14.preprocessing.ConditionalImputer,hotencoding=sklearn.preprocessing.data.OneHotEncoder,scaling=sklearn.preprocessing.data.StandardScaler,variencethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,classifier=sklearn.svm.classes.SVC)** | Support Vector Machine (SVM) | Python | **100.00%** | 1.0000 | 1.0000 |
| 2 | **MultiSearch(weka.classifiers.meta.multisearch.RandomSearch,weka.classifiers.meta.FilteredClassifier(weka.filters.MultiFilter(weka.filters.unsupervised.attribute.ReplaceMissingValues,weka.filters.unsupervised.attribute.RemoveUseless,weka.filters.unsupervised.attribute.Normalize),weka.classifiers.functions.SMO(weka.classifiers.functions.supportVector.RBFKernel,weka.classifiers.functions.Logistic)))** | Support Vector Machine (SVM) | Python | **100.00%** | 0.9992 | 1.0000 |
| 3 | **pipeline.Pipeline(imputation=hyperimp.utils.preprocessing.ConditionalImputer,hotencoding=sklearn.preprocessing.data.OneHotEncoder,scaling=sklearn.preprocessing.data.StandardScaler,variencethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,clf=sklearn.svm.classes.SVC)** | Support Vector Machine (SVM) | Python | **100.00%** | 1.0000 | 1.0000 |
| 4 | **Google TabFM v1.0** | Tabular Foundation Model | PyTorch/Python | **99.65%** | 0.9995 | 0.9569 |
| 5 | **pipeline.Pipeline(columntransformer=sklearn.compose. column transformer.ColumnTransformer(numeric=sklearn.pipeline.Pipeline(imputer=sklearn.preprocessing.imputation.Imputer,standardscaler=sklearn.preprocessing.data.StandardScaler),nominal=sklearn.pipeline.Pipeline(simpleimputer=sklearn.impute. base.SimpleImputer,onehotencoder=sklearn.preprocessing. encoders.OneHotEncoder)),variancethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,mlpclassifier=sklearn.neural network.multilayer perceptron.MLPClassifier)** | Neural Network (MLP) | Python | **99.02%** | 0.9998 | 0.9902 |
| 6 | **Carla Engine (TabICLv2 WebGPU)** | Tabular Foundation Model | Browser | **99.02%** | 0.9980 | 0.8804 |
| 7 | **Streaming nanotabicl** | Tabular Foundation Model | PyTorch/Python | **98.98%** | 0.9980 | 0.8769 |
| 8 | **Full TabICLv2 (PyTorch Reference)** | Tabular Foundation Model | PyTorch/Python | **98.98%** | 0.9980 | 0.8763 |
| 9 | **nanotabicl Vanilla** | Tabular Foundation Model | PyTorch/Python | **98.96%** | 0.9980 | 0.8745 |
| 10 | **TabPFN v3** | Tabular Foundation Model | PyTorch/Python | **98.96%** | 0.9980 | 0.8703 |
| 11 | **pipeline.Pipeline(columntransformer=sklearn.compose. column transformer.ColumnTransformer(numeric=sklearn.pipeline.Pipeline(imputer=sklearn.preprocessing.imputation.Imputer,standardscaler=sklearn.preprocessing.data.StandardScaler),nominal=sklearn.pipeline.Pipeline(simpleimputer=sklearn.impute. base.SimpleImputer,onehotencoder=sklearn.preprocessing. encoders.OneHotEncoder)),variancethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,gradientboostingclassifier=sklearn.ensemble.gradient boosting.GradientBoostingClassifier)** | Gradient Boosting | Python | **98.44%** | 0.9994 | 0.9844 |
| 12 | **EXAONE Tabular** | Tabular Foundation Model | PyTorch/Python | **98.42%** | 0.9960 | 0.7987 |
| 13 | **LogitBoost(weka.classifiers.trees.REPTree)** | Logistic / Linear Model | Python | **98.09%** | 0.9991 | 0.9809 |
| 14 | **pipeline.Pipeline(imputation=preprocessing.ConditionalImputer2,catencoding=preprocessing.MultiLabelEncoder,variencethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,clf=sklearn.ensemble.forest.RandomForestClassifier)** | Random Forest | Python | **98.03%** | 0.9995 | 0.9805 |
| 15 | **pipeline.Pipeline(columntransformer=sklearn.compose. column transformer.ColumnTransformer(numeric=sklearn.pipeline.Pipeline(imputer=sklearn.preprocessing.imputation.Imputer,standardscaler=sklearn.preprocessing.data.StandardScaler),nominal=sklearn.pipeline.Pipeline(simpleimputer=sklearn.impute. base.SimpleImputer,onehotencoder=sklearn.preprocessing. encoders.OneHotEncoder)),variancethreshold=sklearn.feature selection.variance threshold.VarianceThreshold,decisiontreeclassifier=sklearn.tree.tree.DecisionTreeClassifier)** | Decision Tree | Python | **97.92%** | 0.9807 | 0.9791 |

### Repeated Cross-Validation Fold Scores (TabICLv2 Reference)
| Fold | Train Samples | Test Samples | Metric Score | Latency |
| :--- | :--- | :--- | :--- | :--- |
| Fold 0 | 1152 | 576 | 0.0146 | 798ms |
| Fold 1 | 1152 | 576 | 0.0217 | 721ms |
| Fold 2 | 1152 | 576 | 0.0175 | 744ms |
| Fold 0 | 1152 | 576 | 0.0295 | 719ms |
| Fold 1 | 1152 | 576 | 0.0220 | 748ms |
| Fold 2 | 1152 | 576 | 0.0244 | 746ms |
| Fold 0 | 1152 | 576 | 0.0116 | 741ms |
| Fold 1 | 1152 | 576 | 0.0401 | 733ms |
| Fold 2 | 1152 | 576 | 0.0167 | 745ms |
| Fold 0 | 1152 | 576 | 0.0192 | 722ms |
| Fold 1 | 1152 | 576 | 0.0281 | 736ms |
| Fold 2 | 1152 | 576 | 0.0382 | 732ms |
| Fold 0 | 1152 | 576 | 0.0174 | 773ms |
| Fold 1 | 1152 | 576 | 0.0325 | 729ms |
| Fold 2 | 1152 | 576 | 0.0091 | 735ms |
| Fold 0 | 1152 | 576 | 0.0167 | 720ms |
| Fold 1 | 1152 | 576 | 0.0313 | 732ms |
| Fold 2 | 1152 | 576 | 0.0310 | 726ms |
| Fold 0 | 1152 | 576 | 0.0300 | 727ms |
| Fold 1 | 1152 | 576 | 0.0205 | 720ms |
| Fold 2 | 1152 | 576 | 0.0183 | 735ms |
| Fold 0 | 1152 | 576 | 0.0231 | 739ms |
| Fold 1 | 1152 | 576 | 0.0234 | 743ms |
| Fold 2 | 1152 | 576 | 0.0207 | 728ms |
| Fold 0 | 1152 | 576 | 0.0232 | 735ms |
| Fold 1 | 1152 | 576 | 0.0233 | 742ms |
| Fold 2 | 1152 | 576 | 0.0181 | 745ms |
| Fold 0 | 1152 | 576 | 0.0216 | 717ms |
| Fold 1 | 1152 | 576 | 0.0231 | 742ms |
| Fold 2 | 1152 | 576 | 0.0262 | 724ms |

## Provenance & Downloadable Artifacts
- **Dataset Parquet File:** [Direct Parquet Download](https://huggingface.co/datasets/carlahq/demo-tabular-benchmarks/resolve/main/data/car/car.parquet)
- **Google Sheets Interactive Demo:** [Open in Google Sheets](https://docs.google.com/spreadsheets/d/10LzR2sscRiyAj25Tjse9Ev_QOpK6FpIWr_pHL6Ld35Q/edit?usp=sharing)
- **OpenML Source:** [OpenML Dataset](https://www.openml.org/d/40975)
- **Academic Paper / Citation:** [Read Research Paper](https://archive.ics.uci.edu/dataset/19/car+evaluation)
- **Canonical HTML Page:** [https://carlahq.eu/datasets/car](https://carlahq.eu/datasets/car)
