データハンドリング 前処理

pythonのpandasを使ったデータ処理2

投稿日:6月 16, 2019 更新日:

pythonのpandasを使ったデータ処理1からの続き。

データは有名なタイタニックデータを使います。 データはこちらkaggleコンペページのリンクです。 左上の「data」からデータをダウンロードします。

データの読み込み

PassengerIdSurvivedPclassSexAgeEmbarked
0103male22.0S
1211female38.0C
2313female26.0S
3411female35.0S
4503male35.0S

データの抽出

データフレームから条件に合ったデータを抽出する。

pandas.DataFrame.query

( ’ ’ )内に条件式を記述することで、条件に合致したレコードを抽出することができる。条件で複数の加えたい場合は、「and」 「or」で条件を追加する。 「&」 「|」でもOK。

PassengerIdSurvivedPclassSexAgeEmbarked
141503female14.0S
181903female31.0S
242503female8.0S
383903female18.0S
404103female40.0S

これでも同じ結果になる

notを付ければ否定はになる

PassengerIdSurvivedPclassSexAgeEmbarked
171812maleNaNS
212212male34.0S
232411male28.0S
363713maleNaNC
555611maleNaNS

** 注意点 **

queryはコピーを作成し抽出するので、以下のような代入はできない。

代入したい場合はlocを使う

ソート(並び替え)

条件をもとのにデータを並び替える。

pandas.DataFrame.sort_values

年齢の高い順で同じ年齢の場合、PassengerIdの高い順、そしてnaの場合先に持ってくるように並び替える。

df.sort_values(‘Age’, ascending=False)

PassengerIdSurvivedPclassSexAgeEmbarked
63063111male80.0S
85185203male74.0S
49349401male71.0C
969701male71.0C
11611703male70.5Q

行、列の削除

pandas.DataFrame.drop

行の削除

indexの2,3を除外して表示。axis=0は行を表す。

PassengerIdSurvivedPclassSexAgeEmbarked
0103male22.0S
1211female38.0C
4503male35.0S
5603maleNaNQ
6701male54.0S

列の削除

Sex,Ageを除外して表示する。axis=1は列を表す。

PassengerIdSurvivedPclassEmbarked
0103S
1211C
2313S
3411S
4503S

-データハンドリング, 前処理

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

python/基礎/メソッド,関数,インスタンス

pythonでは値に対する処理方法として、メソッド、関数、インスタンスの3つがある。 メソッドと関数はと関数は機能としては同じだが、記述法が異なる。 関数:関数(処理対象)例)max([1,2,3]) …

no image

Pandas/DataFrame/ダミー変数(get_gummies)

ダミー変数とは、カテゴリカルデータのように数値でないデータに対して、0と1の 2値型に変換し数量化すること。 具体的には、血液型、職業など pythonのpandasではget_dummiesを主に利 …

no image

クラスタリングの実践(中学生スポーツテストデータ)

Contents1 クラスタリングの実践1.1 概要1.2 データの読み込み1.3 データの確認1.4 主成分分析1.5 クラスタリング クラスタリングの実践 概要 ・目的:中学生のスポーツテストデー …

no image

python/pandas/DataFrame/欠損値の補完

データフレームの欠損値を補填する Contents1 メソッド2 データの準備3 pandas.DataFrame.fillna3.1 デフォルト3.2 パラメータ(method)3.3 使用例4 p …

no image

Pandas/DataFrame/データ抽出

分析をするにあたって、最初に必要になるpandas/DataFrameのデータ抽出について記載しています。 メソッド pandas.DataFrame.locpandas.DataFrame.iloc …