# {py:mod}`titanite.core.processor`

```{py:module} titanite.core.processor
```

```{autodoc2-docstring} titanite.core.processor
:allowtitles:
```

## Module Contents

### Classes

````{list-table}
:class: autosummary longtable
:align: left

* - {py:obj}`SurveyProcessor <titanite.core.processor.SurveyProcessor>`
  - ```{autodoc2-docstring} titanite.core.processor.SurveyProcessor
    :summary:
    ```
````

### API

`````{py:class} SurveyProcessor(schema: titanite.core.schema.SurveySchema)
:canonical: titanite.core.processor.SurveyProcessor

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor
```

```{rubric} Initialization
```

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor.__init__
```

````{py:method} process(df: pandas.DataFrame, config=None) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor.process

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor.process
```

````

````{py:method} _add_timestamp(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._add_timestamp

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._add_timestamp
```

````

````{py:method} _add_response_counter(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._add_response_counter

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._add_response_counter
```

````

````{py:method} _apply_replace_rules(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._apply_replace_rules

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._apply_replace_rules
```

````

````{py:method} _split_geographic_data(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._split_geographic_data

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._split_geographic_data
```

````

````{py:method} _apply_cluster_rules(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._apply_cluster_rules

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._apply_cluster_rules
```

````

````{py:method} _apply_bin_rules(df: pandas.DataFrame) -> pandas.DataFrame
:canonical: titanite.core.processor.SurveyProcessor._apply_bin_rules

```{autodoc2-docstring} titanite.core.processor.SurveyProcessor._apply_bin_rules
```

````

`````
