Post

Kaggle-Pandasコース内容のまとめ

KaggleのオープンコースのうちPandasミニコースの内容をまとめました。

Pandas

データ操作スキルを完璧にするための短い実践的な課題を解決します。

レッスン1. 作成、読み込み、書き込み

Pandasのインポート

1
import pandas as pd

Pandasにはデータフレーム(DataFrame)シリーズ(Series)という2つの核となるオブジェクトがあります。

データフレーム

データフレーム(DataFrame)は表です。個々のエントリ(entries)で構成される行列を含み、各エントリは特定の値(value)を持ち、1つの(rowまたはrecord)と列(column)に対応します。データフレームのエントリは必ずしも整数である必要はありません。

1
pd.DataFrame({'Bob': ['I liked it.', 'It was awful.'], 'Sue': ['Pretty good.', 'Bland.']})

データフレームの宣言はPythonの辞書(dictionary)形式で行います。キー(key)には列名、値(value)には記載する項目のリスト(list)を入れます。

通常、データフレーム宣言時に列ラベルにはその列の名前が割り当てられますが、行ラベルには0、1、2…の整数が割り当てられます。必要であれば行ラベルを手動で指定することができます。データフレームにおける行ラベルのリストをインデックス(Index)と呼び、indexパラメータを使用して値を指定できます。

1
2
3
pd.DataFrame({'Bob': ['I liked it.', 'It was awful.'], 
              'Sue': ['Pretty good.', 'Bland.']},
             index=['Product A', 'Product B'])

シリーズ

シリーズ(Series)はデータ値の列(sequence)です。

1
pd.Series([1, 2, 3, 4, 5])

シリーズは本質的にデータフレームの単一の列と同じです。したがって、同様にインデックスを指定できます。ただし違いは、’列名’の代わりに’名前’、nameを持つことです。

1
pd.Series([30, 35, 40], index=['2015 Sales', '2016 Sales', '2017 Sales'], name='Product A')

シリーズとデータフレームは密接な関係があります。データフレームをシリーズの集まりと考えると理解しやすいでしょう。

データファイルの読み込み

多くの場合、データを直接作成するよりも既存のデータを取り込んで使用します。データは様々な形式で保存されている可能性がありますが、最も基本的な形式はCSVファイルです。CSVファイルの内容は通常以下のようになっています。

1
2
3
4
Product A,Product B,Product C,
30,21,9,
35,34,1,
41,11,11

つまり、CSVファイルは各値をカンマ(comma)で区切った表です。そのため名前が”Comma-Separated Values”、CSVとなっています。

CSV形式のデータをデータフレームとして読み込む際はpd.read_csv()関数を使用します。


```head()```コマンドを使用してデータフレームの最初の5行を確認できます。

```pd.read_csv()```関数には30以上のパラメータがあります。例えば、読み込もうとするCSVファイルが独自のインデックスを含む場合、```index_col```パラメータの値を指定することで、Pandasが自動的にインデックスを付ける代わりにその列をインデックスとして使用するようにできます。

### データの記録
```to_csv()```メソッドを使用すると、データフレームをCSVファイルとしてエクスポートできます。以下のように使用します。
```python
(データフレーム名).to_csv("(CSVファイルのパス)")

レッスン2. インデックス付け、選択、割り当て

Pandasのデータフレームまたはシリーズから使用する特定の値を選択することは、ほぼすべてのデータを利用する作業で行われるステップです。

This post is licensed under CC BY-NC 4.0 by the author.

Comments powered by Disqus.