# Drone Delivery Prediction — Data

来源：https://www.kaggle.com/competitions/drone-delivery-prediction/data

本地 Meta Kaggle 快照；不是本次实时页面。

# Dataset Description

Below you’ll find everything you need to understand the files and the exact format of every column.

## Files

**train.csv**
Rows represent individual drone deliveries. Includes all feature columns plus the target column `on_time`. Use this file to train and validate your models.

**test.csv**
Same feature columns as `train.csv`, but without the target. You will generate predictions for these rows.

**sample_submission.csv**
A template showing the required submission format. It lists each `Id` from `test.csv` and a placeholder probability for `on_time`.

---

## What you are predicting

Your submission must provide, for every row in `test.csv`, a single probability in the range [0, 1] under the column name `on_time`. The `Id` column links your predictions to the correct rows.

---

## Data format overview

* **File format:** UTF-8 encoded CSV with a single header row.
* **Row unit:** One row corresponds to one delivery mission.
* **Missing values:** None are intentionally included. All columns are required.
* **Column order:** As defined below.
* **Case sensitivity:** Categorical values are case-sensitive and appear exactly as specified.

---

## Columns

Each row in both `train.csv` and `test.csv` starts with an integer identifier and then the feature columns listed below. Only `train.csv` includes the target column.

### Common columns (appear in both train and test)

**Id**

* *Type:* integer
* *Uniqueness:* unique per row
* *Purpose:* Join key between files and your submission

**distance_km**

* *Type:* float (decimal)
* *Units:* kilometers
* *Description:* Straight-line distance between pickup and dropoff points expressed to three decimal places. Values are within a short urban range.

**payload_kg**

* *Type:* float (decimal)
* *Units:* kilograms
* *Description:* Mass of the carried package expressed to three decimal places. Values span light to moderately heavy deliveries suitable for small drones.

**drone_model**

* *Type:* categorical (string)
* *Allowed values:* `A`, `B`, `C`
* *Description:* Airframe class identifier. Each class denotes a distinct hardware configuration. The identifiers are labels only; they do not imply ordering.

**slot_15min**

* *Type:* integer
* *Allowed values:* 0–95 inclusive
* *Description:* Time-of-day slot in 15-minute increments. `0` corresponds to 00:00–00:14, `1` to 00:15–00:29, …, `95` to 23:45–23:59 (local time). This is a discrete time index, not a timestamp.

**wind_token**

* *Type:* string
* *Format:* `DIR-AVG/GUST`
* *Components:*

  * `DIR` ∈ `{N, NE, E, SE, S, SW, W, NW}` (cardinal and intercardinal directions)
  * `AVG` integer, non-negative
  * `GUST` integer, `GUST ≥ AVG`
* *Example:* `NW-12/20`
* *Description:* Compact description of ambient wind during the mission window. Direction is one of eight compass points. Average and gust are integer speeds in a consistent unit.

**route_turns**

* *Type:* string
* *Alphabet:* `U`, `D`, `L`, `R`
* *Length:* 8–20 characters inclusive
* *Description:* Planned path on a city grid encoded as cardinal steps of equal length. Each character represents one step north (`U`), south (`D`), west (`L`), or east (`R`). Characters appear without separators.

**alt_profile**

* *Type:* string
* *Alphabet:* digits `0–3` with hyphen separators
* *Length:* Matches the number of steps in `route_turns` when split on hyphens
* *Format example:* `0-1-2-2-1-0-0-1`
* *Description:* Relative altitude trace aligned to `route_turns`. The first number corresponds to the first step. Values are small non-negative integers and represent relative levels rather than absolute elevation.

**landing_zone**

* *Type:* categorical (string)
* *Format:* `LZ-###` where `###` is zero-padded (e.g., `LZ-007`, `LZ-123`)
* *Cardinality:* several hundred distinct identifiers
* *Description:* Identifier for the destination landing area. Identifiers are labels and should be treated as nominal categories.

**operator_tag**

* *Type:* categorical (string)
* *Allowed values:* `safe`, `balanced`, `aggressive`
* *Description:* High-level descriptor for the operating style applied on the mission. This is a coarse label and should be treated as a nominal category.

### Target column (appears only in train.csv)

**on_time**

* *Type:* integer
* *Allowed values:* `0` or `1`
* *Meaning:* `1` indicates the delivery arrived within the competition’s time threshold; `0` indicates it did not. This column is absent from `test.csv` and must be predicted.

---

## Acronyms and special terms

* **Id:** Row identifier used to match predictions to test rows.
* **DIR:** Compass direction component of `wind_token` (`N, NE, E, SE, S, SW, W, NW`).
* No other acronyms are used in the provided columns.

---

## Submission reminder

Your submission must be a CSV with the two columns `Id` and `on_time`, one row for each `Id` in `test.csv`. The value in `on_time` must be a probability between 0 and 1.