0
1

More than 1 year has passed since last update.

Pandasの基礎の基礎

Posted at

Pandas基礎の基礎

記事の目的

pandasは、テーブルデータの処理に特化したpythonのモジュールです。ここでは、pandasの基本的な使い方を、備忘録として整理しました。

1. データの取り込み

試しに、以下のようなcsvファイルを読み込んでみます。

test.csv
テスト
番号,名前,年齢,身長,性別
1,タカシ,65,178.2,男
2,ヨシミ,33,165.1,女
3,ジロウ,18,180.2,男
4,サブロウ,15,160.3,男

データの取り込みには、pandas.read_csv( ) もしくは、pandas.read_table( )を使います。この二つの関数、デフォルトの区切り文字が異なるだけで、その他の中身は同じのようです。

read_data.py
import pandas as pd
#
data=pd.read_table( "test.csv",
 skiprows=1,#スキップ行数の指定
 delimiter=",",#区切り文字の指定
 header=0,#ヘッダー行数の指定
 index_col=0,#見出し列数の指定
)
print(data)

read_table関数の引数は49個あるようですが、よく使いそうな引数は以下の4つくらいかなと思っています。

skiprows delimiter header index_col
スキップする行数を指定 区切り文字を指定 ヘッダの行番号を指定(スキップ分は除く) 見出しの列番号を指定

実行結果は、以下のような感じです。csvのテーブルがそのまま読み込まれています。

実行結果
      名前  年齢     身長 性別
番号
1    タカシ  65  178.2  男
2    ヨシミ  33  165.1  女
3    ジロウ  18  180.2  男
4   サブロウ  15  160.3  男

2. データの切り出し

任意の列のデータの切り出しは、切り出したい列のヘッダ名のリストを指定するだけです。

test=data[["名前","年齢"]]
print(test)
実行結果
      名前  年齢
番号
1    タカシ  65
2    ヨシミ  33
3    ジロウ  18
4   サブロウ  15

また、ilocを用いて、切り出したい範囲を指定することもできます。

test=data.iloc[1:3,0:2] #1行目~2行目、0列目~1列目を切り出し
print(test)
実行結果
     名前  年齢
番号
2   ヨシミ  33
3   ジロウ  18

特定の条件を満たすデータを抽出することもできます。

test=data[data["性別"]=="男"] 
print(test)
実行結果
      名前  年齢     身長 性別
番号
1    タカシ  65  178.2  男
3    ジロウ  18  180.2  男
4   サブロウ  15  160.3  男

3.データの可視化

pandasのデータフレームは、matplotlibによる可視化も簡単にできます。

import matplotlib.pyplot as plt
import japanize_matplotlib
data.plot(kind="hist")
plt.show()

Figure_1.png

かなり便利です!!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1