titanite.preprocess#

Module Contents#

Functions#

preprocess_data

データの前処理

replace_data

いくつかのカラムの値を置換する

split_data

五大州/地域を分割して、新しいカラムとして追加する

categorical_data

カテゴリー型に変換する

sentiment_data

感情分析

cluster_data

クラスター分割

binned_data

ビン分割

save_data

データフレームを保存

API#

titanite.preprocess.preprocess_data(data: pandas.DataFrame) pandas.DataFrame#

データの前処理

  1. タイムスタンプをdatetimeオブジェクトに変換する

  2. 回答数の集計に使うカラムを追加する

その後、replace_data、split_data、cluster_data、binned_data の順に処理します。

Parameters

data : pd.DataFrame 未処理のデータフレーム

Returns

pd.DataFrame 前処理したデータフレーム

titanite.preprocess.replace_data(data: pandas.DataFrame) pandas.DataFrame#

いくつかのカラムの値を置換する

アンケートの選択肢のままだと前処理が面倒な場合があります。 そのような選択肢はこの関数で整えてください。

Parameters

data : pd.DataFrame 入力データフレーム

Returns

pd.DataFrame データフレーム

titanite.preprocess.split_data(data: pandas.DataFrame) pandas.DataFrame#

五大州/地域を分割して、新しいカラムとして追加する

アンケートの勤務地/出身地の選択肢は”/”で区切って集計することも想定して作成しました。 それぞれの質問の回答に、五大州(regional)と地域(subregional)のカラムを追加しています。

Parameters

data : pd.DataFrame データフレーム

Returns

pd.DataFrame データフレーム

titanite.preprocess.categorical_data(data: pandas.DataFrame, categories: dict) pandas.DataFrame#

カテゴリー型に変換する

Parameters

data : pd.DataFrame データフレーム categories : dict カテゴリー型

Returns

pd.DataFrame データフレーム

titanite.preprocess.sentiment_data(data)#

感情分析

`TextBlob``パッケージを使って、自由記述の内容を感情分析する。

titanite.preprocess.cluster_data(data: pandas.DataFrame) pandas.DataFrame#

クラスター分割

Adds four derived cluster columns to the DataFrame:

  • q01_clustered: age cluster — Cluster1 (under 40s) vs Cluster2 (40s and over)

  • q13_clustered: female ratio cluster — Cluster1 (<=20%) vs Cluster2 (>=40%)

  • q01q02_clustered: young female/male cluster — Cluster1 (under 40s, Female) vs Cluster2 (under 40s, Male)

  • q13q14_clustered: ratio-satisfaction cluster — Cluster1 (ratio <25% and Very Poor/Poor) vs Cluster2 (ratio >25% and Very Good/Good)

Parameters

data : pd.DataFrame 入力データ

Returns

pd.DataFrame クラスター分類を追加したデータ

titanite.preprocess.binned_data(data: pandas.DataFrame) pandas.DataFrame#

ビン分割

Adds two binned columns to the DataFrame:

  • q10_binned: number of invited speakers binned into “Prefer not to answer”, “0”–“9”, “10+” (boundaries: -1, 0, 1, …, 10, 25)

  • q13_binned: female ratio (0–100%) binned in 5% increments from 0% to 100%, plus “Prefer not to answer” for values below 0 (boundaries: -1, 0, 10, 15, 20, …, 100, 105)

Parameters

data : pd.DataFrame 入力データ

Returns

pd.DataFrame ビン分割したカラムを追加したデータ

titanite.preprocess.save_data(data: pandas.DataFrame, write_dir: str) None#

データフレームを保存

  • {write_dir} / categorical_data.csv

  • {write_dir} / sentiment_data.csv

Parameters

data: pd.DataFrame データフレーム write_dir: str ディレクトリ名

Returns

None