Pandasは外部のデータをPythonに取り込み、表として表示してくれたり集計したりと非常に便利なライブラリです。
PandasにはSeriesとDataFrameがありデータ構造を作成するものです。
機械学習やデータ分析を行う上で簡単にデータ構造を作ったり、あるいは別の資料から読み込んだりできて非常に便利なものです。
PandasのSeriesを使う
Seriesは1次元のデータ構造を作るものです。簡単に言うと便利なメソッドを持った配列を作るものです。
以下はSeriesの使い方の例です。
import pandas as pd from pandas import Series ages = Series([20,45,60,53,31],index = ['Oda','Toyotomi','Tokugawa','Asikaga','Taira']) ages
結果
Oda 20
Toyotomi 45
Tokugawa 60
Asikaga 53
Taira 31
dtype: int64
ages['Oda']
結果
20
ある値以上のものを表示する例
ages[ages>40]
結果
Toyotomi 45
Tokugawa 60
Asikaga 53
dtype: int64
Seriesを辞書に変更する例
ages_dic = ages.to_dict() ages_dic
結果
{‘Asikaga’: 53, ‘Oda’: 20, ‘Taira’: 31, ‘Tokugawa’: 60, ‘Toyotomi’: 45}
辞書をSeriesに変更する例
ages_Series = Series(ages_dic) ages_Series
結果
Asikaga 53
Oda 20
Taira 31
Tokugawa 60
Toyotomi 45
dtype: int64
Seriesに名前をつけることができます。
ages.name = '年齢一覧' ages
結果
Oda 20
Toyotomi 45
Tokugawa 60
Asikaga 53
Taira 31
Name: 年齢一覧, dtype: int64
indexに名前をつける
ages.index.name = '名前' ages
結果
名前
Oda 20
Toyotomi 45
Tokugawa 60
Asikaga 53
Taira 31
Name: 年齢一覧, dtype: int64
DataFrameの使い方
DataFrameは2次元のデータ構造を作ります。簡単にいうと表を作るものです。
コピーしたデータ(クリップボードのデータ)を使う方法
食品成分ランキングのページの表をコピーして利用してみます。
pandasのインポート
import numpy as np import pandas as pd from pandas import Series,DataFrame
ここでネット上のデータ(tableなどで作成されたデータ)をコピーします。
次のコードでコピーしたデーターをPythonに読み込み、Jupyter上に表として表示します。
frame = pd.read_clipboard() frame
表のヘッダ部分を表示するには以下のようにします。
frame.columns
結果
Index([‘順位’, ‘食品名’, ‘成分量’], dtype=’object’)
特定の列だけを表示させる例です。
frame['食品名']
複数の列も指定することができます。
frame[['食品名','成分量']]
head()は最初から5行まで表示します。引数を入れると引数で指定した行まで表示します。
frame.head()
frame.head(3)
下から数えて表示したい場合はtail()を使います。これも引数で何番目までか指定できます。
frame.tail(3)
新規で列を増やすこともできます。
frame['備考'] = "SampleA" frame
np.arange()で配列を作成して挿入することもできます。
frame['備考'] = np.arange(11) frame
Series()で配列を作成して新しい列に挿入する例
remarks = Series(["SampleB",'SampleC'],index=[4,8]) frame['備考'] = remarks frame
特定の列を削除するには「del」を使用します。
del frame['備考'] frame
辞書をPandasで表にする
import numpy as np import pandas as pd from pandas import Series,DataFrame data = {'drink':['juice','cafe','tea'],'price':[300,380,400]} drink_frame = DataFrame(data) drink_frame
csvファイルの読み込み
Pandasを使ってCSVファイルを読み込むことができます。読み込まれたデータはPandas.DataFrameとなり便利なPandasのメソッドやプロパティを使うことができます。
train = pd.read_csv("train.csv")
コメントを投稿するにはログインしてください。