Pandasの型変換メソッドのまとめ|astype,isna,notna,copy

スポンサーリンク

読者の今回は、Pythonで重要な4つのPandas変換関数に焦点を当てます。

では、さっそく始めましょう

スポンサーリンク

4つのPandas変換関数

このトピックでは、例として「自転車レンタル台数予測」データセットを使用します。

データセットはこちらで入手できます。


1. Pandasのastype()関数

Pandas モジュールで最もよく使われる Pandas 変換関数が astype()関数です。

astype()関数を使うと、変数のデータ型を簡単に別の型に変換することができます

そのため、データ変数間の相互変換が容易になります。

例えば、以下の様になります。

この例では、最初に dtypes オブジェクトを使ってデータセットの変数のデータ型を調べます。

BIKE.dtypes

変数のデータ型

instant         int64
dteday         object
season          int64
yr              int64
mnth            int64
holiday         int64
weekday         int64
workingday      int64
weathersit      int64
temp          float64
atemp         float64
hum           float64
windspeed     float64
casual          int64
registered      int64
cnt             int64
dtype: object

さらに、astype()関数を用いて変数 season のデータ型を integer から category に変更します。

整数からカテゴリへの変換

BIKE.season = BIKE.season.astype("category")
BIKE.dtypes

結果は以下の通りです。

instant          int64
dteday          object
season        category
yr               int64
mnth             int64
holiday          int64
weekday          int64
workingday       int64
weathersit       int64
temp           float64
atemp          float64
hum            float64
windspeed      float64
casual           int64
registered       int64
cnt              int64

2. Pandas isna() 関数

データ分析や前処理を行う場合、データを調査して意味のある情報を引き出すことが非常に重要です。

NULL 値の存在を確認することは、モデリングや変換の前の重要なステップであると思われます。

isna()関数を使えば、NULL値の有無を簡単にチェックすることができます

これはブール関数で、カラムやデータセット内に NULL 値があることを検出すると TRUE を返します。

例えば、以下の様になります。

この例では、isna() 関数は false を返します。

これは、データセット内に欠損値や NULL 値がゼロであることを検出したからです。

BIKE.isna()

結果は以下の通りです。

BIKE.notna()

3. Python notna() 関数

Python notna()関数を使うと、NULLやNAと等価でない値を簡単に分離して探すことができます。

つまり、notna()関数は、非NULL値の存在を検出した場合、TRUEを返します。

例えば、以下の様になります。

以下の例では、notna()関数はデータセット全体からNULL値を検出しなかったので、TRUEを返します。

df = BIKE.copy()
print(df)

結果は以下の通りです。

Conversion Functions
Conversion Functions

4. Python dataframe.copy() 関数

データセットを操作する場合、変更を加えるための予備のコピーとして、元のデータのバックアップをとっておくことは非常に重要です。

これは、万が一操作がうまくいかなかった場合に、元の状態にロールバックするのにも役立ちます。

例えば、以下の様になります。

この例では、copy()関数を使ってBIKEオブジェクトで表されるデータセットのコピーを保持するデータフレーム’df’を作成しました。

Conversion Functions Non Missing Values
Conversion Functions Non Missing Values

を出力します。

Pandas Copy Dataframe
Pandas Copy Dataframe

まとめ

ここまでで、Pythonの変換関数に関するこのトピックは終わりです。

もし何か疑問があれば、お気軽にコメントください。

Pythonプログラミングに関連するこのような記事のために、私たちと一緒にご期待ください。

タイトルとURLをコピーしました