Pythonと!

プログラミングド素人の勉強日記です。

Pandas

PandasのデータフレームでIDを組み合わせて一意のキーを作成する。

key1_key2の形になるcombine_key列を作成する方法。 key1とkey2はint型を想定しています。 df['combine_key'] = df.apply(lambda x: '{}_{}'.format(x['key1'], x['key2']), axis=1) 参考にしたサイト [python][DataFrame]数字を結合して文字列を作る - Qiita

Pandas mergeのhowのメモ(inner, left, light, outer)

Pandasのmergeで指定するhowの種類別メモ pd.merge(df1, df2, on='key', how='how') how 説明 inner デフォルト設定。両方のDFに含まれるキーだけを残して結合 left 1つ目に渡したDFのキーを全て残して結合 right 2つ目に渡したDFのキーを全て残して結合 o…

Pandasでone-hotエンコーディング

Pandasでone-hotエンコーディングを実装してみる。 import pandas as pd # 学習データ(df_1)とテストデータ(df_2)の結合 combine = pd.concat([df_1, df_2]) # カテゴリ列を抽出 cat_cols = [] for col in combine.columns: if combine[col].dtype == 'o…

オブジェクト型を一気にラベルエンコーディングする方法

from sklearn.preprocessing import LabelEncoder le = LabelEncoder() for col in df.columns: if df[col].dtype == 'object': df[col] = le.fit_transform(df[col])

【Pandas】条件に合致する行だけ右詰めしたい場合

こういう表を、 # hoge fuga piyo 1 a b NaN 2 c NaN NaN 3 NaN d NaN 4 e f g こうしたい時の話。 # hoge fuga piyo 1 NaN a b 2 NaN NaN c 3 NaN NaN d 4 e f g ・piyo列がnullの場合に右に詰める。(空行はないという前提) # piyo列のnullの合計が0にな…