個人的に使うものを厳選して残しておきます。
データのインポート
Pandasのread_csvは、CSVファイルを読み込むための関数です。
import pandas as pd
df = pd.read_csv('home/hoge.csv')
import pandas as pd
# デフォルトの区切り文字はコンマ。
# スペース区切りの場合は sep 引数を使用する。
df = pd.read_csv('home/hoge.csv', sep=' ')
# 自動的に最上行のデータをヘッダーにしたくない場合
df = pd.read_csv('home/hoge.csv', header=None)
# ヘッダーに使用する列名を指定するとき
df = pd.read_csv('home/hoge.csv', names=['A', 'B', 'C'])
# 読み込む列を指定したいとき
df = pd.read_csv('home/hoge.csv', usecols=[0, 1, 2])
データのエクスポート
df.to_csv('home/new_hoge.csv') # CSVファイルに書き込む
データの探索
Pandasのdataframeにデータをインポートしたら、
これらのメソッドを使ってデータがどのようなものであるかを知ることができる。
import pandas as pd
df = pd.read_csv('data.csv')
print(df.shape)
>>> (行数,列数)
print(df.head(5))
>>> 先頭から5行を表示
print(df.tail(3))
>>> 末尾から3行を表示
print(df.info())
>>> データフレームの情報を表示
>>> インデックスの情報,各列のデータ型,メモリ使用量などが表示
print(df.columns)
>>> 特徴ラベル一覧の表示
print(df.describe())
>>> データフレームの数値型の列に関する統計量を算出する
>>> count, mean, std, min, 25%, 50%, 75%, max などが出力
データの抽出
データの検査やさらなる分析を行うために、
1つの要素などを抽出する必要があるときに便利なメソッド。
df2 = df.loc['列名A','列名B'] # '列名A'と'列名B'のデータ
df2 = df.iloc[0] # 0行目のデータ
df2 = df.iloc[:,0] # 0列目のデータ
df2 = df.iloc[0,0] # 0行0列目のデータ
データ処理
データをそのまま使えない場合が多いので、
データ処理する必要がある。そのときに使うメソッド。
df.columns = ['a','b','c'] # 列名の変更
df.sort_values(col1) # 列col1を基準に昇順に並び替える
df.sort_values(col2,ascending=False) # 列col2を基準に降順に並び替える
df.sort_values(by=['列名1', '列名2'], ascending=[True, False])
# 列名1で昇順、列名2で降順でソートする。
pd.isnull() # 各要素がNaNかどうかを(True/False)のデータ構造を返す
df.dropna() # すべての行にNaNが含まれている場合に、それらの行を削除する。
df.dropna(axis=1) # 列方向の操作
df.dropna(axis=1,thresh=n) # その列にNaNがn個以上ある場合にその列を削除
df.fillna(0) # NaNの値を0に置き換える
df_new = df.fillna(0, inplace=False) # もとのデータフレームを変更したくない場合
df.fillna(df.mean()) # NaNの値を平均値に置き換える
df.astype(float) # データの中身をfloat型に変更する