【Pandas】空港のクレームデータを分析してみた

 

日本だと馴染みがないですが、アメリカの空港だと、TSA(Transportation Security Administration)という機関が荷物をチェックします。テロ対策ですね。

アメリカだと空港に預けた荷物のチェックインや機内への運搬、TSAによる中身チェックの過程で、荷物が破損しそれに対するクレームが多いみたいです。

日本では考えられません。

 

その多数のクレームをまとめたデータが、以下のTSAクレームデータです。

事件の発生日、空港の名前、航空会社、クレームの種類、クレームの発生した場所、示談金(Close Amount)などが書かれています。

Dispositonというのは、処分という意味で、Deny(却下)なのかApprove in Full(全額支払い)などがあるようです。

 

このTSAの荷物検査に対する顧客のクレームとまとめたデータがネットにあったので、これを分析してみようと思います。

 

スポンサーリンク

使用するデータとパッケージ

 

Macで以下のコマンドを使いエクセルデータをダウンロードします。

 

使用するパッケージはpandasとxlrdを使います。

xlrdはエクセルデータを扱うためのパッケージです。Anacondaを使用している場合は以下のようにインストールできます。

 

 

データの情報を調べるにはinfo()を使用します。

 

合計で10列*8855行から構成されており、2つの列のdtypeがdatetime64型、8つの列のdtypeがobject型であることが分かりました。メモリは761KB使用しています。

初めの3行を出力するには以下の通りにします。

 

datetime型を操作する

 

dtypeがdatetime型であれば、時間ごとの集計が可能になります。

例えば、時間ごとに起きたクレームの件数を表示するには以下のようにします。

 

 

dtypeがobjectってどういうこと?

 

8つの列のdtypeがobjectになっていました。例えば、示談金Close Amountなんかは数を表すので、intもしくはfloatじゃないの?って思いますが、そうではないみたいです。

 

なんと!! 最後の行にハイフン(-)という文字列が入っています。

pandasでは、int,floatを判別できなかった場合には、”object”としてdtypeを認識するようです。

このハイフンを0に変換したらどうなるのでしょうか。

 

dtypeがfloat64になりました。

小数点を持つデータがこの列のどこかに含まれていたのでintではなくfloatになったようです。

これで分析する準備ができました。

おわり。

参考

https://medium.com/kitepython/pandas-tutorial-da4dd84edd00

ABOUTこの記事をかいた人

のっくん

理系院卒で大企業の研究所に就職。 趣味はプログラミング、レアジョブ英会話、筋トレ、旅行。 Twitter:@yamagablog