Task: Data-transform-reshape (source dataset: Auto-Tables)

Given a table, predict what python pandas transformation may be needed on the given input table. Valid choices for transformation include: {"stack", "wide_to_long", "transpose", "pivot", "explode", "ffill", "subtitles"}. Note that each of these is a common Python Pandas operator. Some transformations can have parameters. Each transformation and its parameters are describe as follows.
 
- stack: collapse homogeneous cols into rows.
@param (int): stack_start_idx: zero-based starting column index of the homogeneous column-group.
@param (int): stack_end_idx: zero-based ending column index of the homogeneous column-group.
 
- wide_to_long: collapse repeating col-groups into rows.
@param (int): wide_to_long_start_idx: zero-based starting column index of the repeating col-groups.
@param (int): wide_to_long_end_idx: zero-based ending column index of the repeating col-groups.
 
- transpose: convert rows to columns and vice versa.
 
- pivot: pivot repeating row-groups into cols.
@param (int): pivot_row_frequency: frequency of repeating row-groups.
 
- ffill: fill structurally empty cells in tables.
@param (int): ffill_end_idx: zero-based ending column index of the columns to be filled.
 
- explode: convert composite cells into atomic values
@param (int): explode_column_idx: zero-based column index of the column to be exploded.
 
- subtitle: convert table subtitles into a column.
 
OUTPUT the predicted transformation name along with its parameters for the given INPUT table in a JSON, e.g., {"transformation": "stack", "stack_start_idx": 1, "stack_end_idx": 5}. If the input table needs multi-step transformations (e.g, ffill followed by stack), list JSON of each transformation sequentially in a list, e.g., [{"transformation": "ffill", "ffill_end_idx": 1}, {"transformation": "stack", "stack_start_idx": 1, "stack_end_idx": 5}]. No explanation is needed.

## Input:
|                           |   Overn. og |   Industri |   Bygge- og |   Utv. av olje |   Faglig og |
|                           |   servering |            |   anleggsv. |        og gass |   tekn. tj. |
|:--------------------------|------------:|-----------:|------------:|---------------:|------------:|
| 2008.0                    |       100   |      100   |       100   |          100   |       100   |
|                           |       100.6 |      100.7 |       101.7 |          100.2 |       103.4 |
|                           |       102   |      101.2 |        98   |          115.6 |       106.4 |
|                           |       103.8 |      101.1 |        95.8 |          114.3 |       109.2 |
| 2009.0                    |        97.9 |       98   |        94.9 |          113.3 |       106.6 |
|                           |        97.8 |       96.8 |        94.3 |          114   |       106   |
|                           |        98   |       95.7 |        94.5 |          114.7 |       105.8 |
|                           |        98.9 |       94.7 |        95.1 |          114.9 |       106.5 |
| 2010.0                    |        98.2 |       93.6 |        92.6 |          118.3 |       105.4 |
|                           |        97.7 |       92.3 |        92.6 |          118.3 |       105   |
|                           |        98.4 |       91.7 |        93.8 |          119   |       105.3 |
|                           |        98.8 |       91.3 |        94.4 |          121.9 |       105.8 |
| 2011.0                    |        99.8 |       91.1 |        94.8 |          123.1 |       106.2 |
|                           |       101.4 |       91.6 |        96   |          124.7 |       106.2 |
|                           |       101.6 |       92.1 |        97.6 |          126.5 |       107.4 |
|                           |       102.2 |       92.5 |        99   |          130.1 |       108.1 |
| 2012.0                    |       101.5 |       92.4 |       100   |          133.5 |       108.8 |
|                           |       103.2 |       92.5 |       101.3 |          135.5 |       110.2 |
|                           |       103.6 |       93.2 |       103.1 |          137.6 |       109.9 |
|                           |       103.2 |       93.2 |       104.4 |          140.7 |       111   |
| 2013.0                    |       103.9 |       93.9 |       104.6 |          141   |       111.2 |
|                           |       103.9 |       93.9 |       105.1 |          141.9 |       111.6 |
|                           |       106.1 |       94.4 |       105.2 |          142.8 |       112.5 |
|                           |       107.5 |       94.8 |       105.8 |          144.3 |       113.3 |
| 2014.0                    |       107.7 |       94.8 |       106.8 |          144.6 |       115.1 |
|                           |       109.2 |       95.1 |       107.6 |          144.1 |       114.6 |
|                           |       109.5 |       95.1 |       108.4 |          143   |       115.5 |
|                           |       110.2 |       94.9 |       109.1 |          140.5 |       116   |

## Output:


source: excel_file
label: ffill