【Python図解】Pandas DataFrameで特定のデータ型の列を抽出する方法(select_dtypes( )メソッド)を解説!

Pythonを使っていてこんな悩みはありませんか?

「Pandas DataFrameで特定のデータ型の列を抽出をしたい、、しかしやり方がわからない。」

そのお悩み解決します。
結論をお話しすると、Pandasのselect_dtypes( )メソッドを使用することで、特定のデータ型の列を抽出できます。

今回は「タイタニック予測問題」のデータを使って解説します。
「タイタニック予測問題」のtrainデータをdfとして読み込みます。dfは12個のカラムから構成され、891個のデータが格納されています。
以下dfとして解説します。

それでは解説していきます。

特定のデータ型の列を抽出する方法

まずはdfに含まれる列のデータ型を確認します。データ型はdf.dtypesで確認できます。
dfにはobject型(文字列)、int型、 float型の列があることが確認できます。
文字列を要素とする列のデータ型はobject型であることに注意してください。

df.dtypes

それぞれのデータ型の列を抽出する方法を解説していきます。

object型の列を抽出する場合

まずはobject型のデータを抽出する場合を解説します。
下記のように「include = object」とすることでobject型の列を抽出できます。
dfに含まれるobject型(文字列)の列が抽出できていることが確認できます。

df.select_dtypes(include = object)

int型の列を抽出する場合

次にint型の列を抽出する場合を解説します。
下記のように「include = int」とすることでint型の列を抽出できます。
dfに含まれるint型の列が抽出できていることが確認できます。

df.select_dtypes(include = int)

float型の列を抽出する場合

次にfloat型の列を抽出する場合を解説します。
下記のように「include = float」とすることでfloat型の列を抽出できます。
dfに含まれるfloat型の列が抽出できていることが確認できます。

df.select_dtypes(include = float)

int型とfloat型をまとめて抽出する場合

次にint型とfloat型をまとめて抽出する場合を解説します。
下記のように「include = ‘number’」とすることで、int型とfloat型をまとめて抽出できます。
dfに含まれるint型とfloat型をまとめて抽出できていることが確認できます。

df.select_dtypes(include = 'number')

今回の記事はここまでです。
今回の記事では、「特定のデータ型の列を抽出する方法(select_dtypes( )メソッド)」について解説しました。

pythonでデータ分析している際は様々なデータ型が含まれていることが多く、データ型で前処理方法が変わる場合も多いため、是非今回の記事でselect_dtypes( )メソッドの使い方をマスターしていただければと思います。

この記事が少しでも皆さんのお役に立てれば幸いです。

また下記記事で、pandasの解説記事をまとめていますので良ければご活用ください。

【Python図解】Pandasのメソッド解説記事まとめ
今回の記事では、私がpython初学者だった時に感じた悩みを解決する記事を書いています。 「Pandasのメソッドの解説記事は多いが、全体像がわからない、、」 「Pandasのメソッドは非常に多く調べるのが大変なので、情報を集約して欲しい、...

皆さんの勉強が少しでも進むことを願っています。

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