1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

機械学習勉強記録 Pandasの基礎

Last updated at Posted at 2021-06-08

Pandasとは

機械学習のプログラミングでよく用いられるライブラリで、データ解析を容易にする機能を持っています。
データフレーム(DataFrame)などの独自のデータ構造によって様々な処理が可能になります。

モジュール、パッケージ、ライブラリについて

  • モジュール…関数を格納する部品のようなもの。「.py」というテキストファイル。例えるなら基盤。
  • パッケージ…モジュールの集まり。例えるなら炊飯器。
  • ライブラリ…パッケージをいくつかまとめてインストールできるようにしたもの。例えるならキッチン。

Pandas基本操作

Pandasのインストール

import pandas as pdと最初に入力しておけば、そのファイル内でpdと入力すればPandasのライブラリの中にある機能を使うことができるようになります。

データの読み込み

csvファイルを読み込む時はこのようにします。

.python
# CSVファイルの読み込み
pd.read_csv('sample.csv')
# 読み込んだCSVファイルをdfという変数に代入
df = pd.read_csv('sample.csv')

このような形で、読み込まれた時、データの型は、

.python
type(df)
"""
出力結果 : pandas.core.frame.DataFrame
"""

となります。これはデータフレームと呼ばれる型であることを意味しています。

読み込んだデータを確認する方法として、
df.shape データの形を表示(行数、列数を確認)
df.head(3) データフレームの上から3行を表示
df.tail(3) データフレームの下から3行を表示
などがあります。

データの切り分け

ilocメソッドを使います。

.python
# 1行目、1列目を切り出してtに代入
t = df.iloc[0, 0]
# 全ての行、1列目を切り出してtに代入
t = df.iloc[:, 0]
# 全ての行、2列目以降を切り出してtに代入
t = df.iloc[:, 1:]
# 列名(ラベル)を直接指定して切り出してtに代入
t = df['A']
t = df.loc[:, 'A']
# 複数の列名(ラベル)を指定して切り出してtに代入
t = df.loc[:, ['A', 'B']]

iloclocの違い

loc 行ラベル、 列ラベルを指定して切り出し
iloc 行の番号(0 ~ )、列の番号(0 ~ )を指定して切り出し

データの並び替え

sort_valueメソッドを使います。

.python
# Aの列を昇順で並び替え
df.sort_values('A')
# Aの列を降順で並び替え
df.sort_values('A', ascending=False)

列の追加・削除

dropメソッドを使います。

.python
# aという変数に3行1列のデータフレームを代入
a = pd.DataFrame([[1],[2],[3]])
# Aというラベル名の列にaを追加
df['A'] = a
# dfからAというラベル名の列の削除
df.drop(labels='A',axis=1)

追加の際は、追加する列の行数が追加するデータフレームの行数と一致していないとエラーが起こります。

axis=1は列方向に削除
axis=0は行方向に削除
するための引数です。

データの絞り込み

A列の値が3のデータだけ表示させる時は、

.python
# dfというデータフレームで、A列の値が3の行を表示
df[df['A'] == 3].head()

となります。
複数条件をつける時は、

.python
# dfというデータフレームで、A列の値が3、かつBの値が4の行を表示
df[(df['A'] == 3) & (df['B'] == 4)].head()
# dfというデータフレームで、A列の値が3、またはBの値が4の行を表示
df[(df['A'] == 3) | (df['B'] == 4)].head()

となります。

1
2
1

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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?