ブログ

Pythonライブラリの基礎知識|用途別おすすめ一覧

Pythonライブラリの基礎知識|用途別おすすめ一覧

目次

※この記事にはプロモーションを含みます

WEBMASTERSのトップページへ

はじめに

Pythonを学び始めると、「次は何を勉強すればいい?」という壁にぶつかる方が多いのではないでしょうか。基礎の構文は理解できても、実際にデータ分析やWebスクレイピング、機械学習を始めようとすると、さまざまなライブラリが登場して戸惑ってしまいます。

Pythonには数万を超えるライブラリが存在しており、何を選べばいいか分からないのは当然のことです。大切なのは 「何をしたいか」を明確にしてから、目的に合ったライブラリを選ぶことです。

この記事では、Pythonライブラリの基礎知識から、データ分析・Webスクレイピング・機械学習といった用途別の定番ライブラリを厳選して紹介します。インストール方法や選び方のポイントも解説しているので、初めてライブラリを使う方でも迷わず進められます。

Pythonライブラリとは?

Pythonを実務や学習で活用するうえで、ライブラリの理解は欠かせません。この記事では標準ライブラリと外部ライブラリの違いから順に説明していきます。

標準ライブラリとは

標準ライブラリとは、Pythonをインストールした時点から使えるライブラリ群のことです。追加のインストール作業なしに利用できるため、Pythonを使い始めた初日から活用できます。

代表的な標準ライブラリには以下のようなものがあります。

  • os — ファイルやディレクトリの操作
  • sys — Pythonインタープリタの設定や終了処理
  • re — 正規表現による文字列検索・置換
  • datetime — 日付・時刻の処理
  • json — JSONデータの読み書き
  • math — 数学的計算関数(平方根・三角関数など)

これらは公式ドキュメントの「Python標準ライブラリ」に一覧が掲載されており、必要に応じて参照することをおすすめします。

外部ライブラリとは

外部ライブラリとは、Pythonコミュニティや企業が開発・公開しているライブラリで、標準ライブラリには含まれていないものです。利用するには、別途インストールが必要です。

外部ライブラリの多くはPyPI(Python Package Index) というパッケージ管理サービスで公開されています。PyPIには現在50万件を超えるパッケージが登録されており、Pythonの強力なエコシステムを支えています。

インストールにはpipというコマンドラインツールを使います。

pip install ライブラリ名

pipはPythonに標準で付属しているため、特別な設定なしにすぐ使えます。本記事で紹介するNumPy・Pandas・Requestsなどはすべて外部ライブラリであり、利用前にインストールが必要です。

Pythonライブラリの種類

データ分析・数値計算に使うPythonライブラリ

Pythonがデータサイエンス分野で圧倒的に支持されている理由の一つが、データ分析向けの強力なライブラリ群です。ここでは特によく使われる3つを紹介します。

NumPy(数値計算・多次元配列操作)

NumPyは、Pythonで数値計算を行うための基盤となるライブラリです。多次元配列(ndarray)を効率よく扱う機能を提供しており、大量のデータを高速に処理できます。

import numpy as np

# 配列の作成
a = np.array([1, 2, 3, 4, 5])
print(a * 2)  # [2, 4, 6, 8, 10]

# 2次元配列(行列)
matrix = np.array([[1, 2], [3, 4]])
print(np.transpose(matrix))

Pythonの標準リストと比べてNumPyの配列は演算速度が格段に速く、機械学習ライブラリの多くがNumPyの配列形式をベースに設計されています。

データ分析や機械学習を学ぶ際には、NumPyの理解が大前提となります。

インストールコマンド

pip install numpy

Pandas(データ解析・DataFrame操作)

Pandasは、表形式のデータを直感的に操作するためのライブラリです。DataFrameと呼ばれる2次元のデータ構造を中心に設計されており、Excelのスプレッドシートに近い感覚でデータを扱えます。

import pandas as pd

# CSVファイルの読み込み
df = pd.read_csv("data.csv")

# 列の参照
print(df["name"])

# 条件に合う行の抽出
filtered = df[df["age"] > 30]
print(filtered)

データのフィルタリング・集計・結合・欠損値の処理など、データ分析で必要な操作のほぼすべてをPandasでカバーできます。

CSVやExcelファイルの読み書きにも対応しており、実務でのデータ加工に欠かせないライブラリです。

インストールコマンド

pip install pandas

Matplotlib(グラフ描画・データ可視化)

Matplotlibは、データをグラフや図として視覚化するためのライブラリです。折れ線グラフ・棒グラフ・散布図・ヒストグラムなど、さまざまな種類のグラフを作成できます。

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 5, 3]

plt.plot(x, y)
plt.xlabel("X軸")
plt.ylabel("Y軸")
plt.title("折れ線グラフの例")
plt.show()

データ分析では、数値を眺めるだけでなくグラフとして可視化することで傾向や異常値を発見しやすくなります。

PandasやNumPyと組み合わせて使われることが多く、データサイエンスの学習では必ずセットで登場するライブラリです。

インストールコマンド

pip install matplotlib

WebスクレイピングとWeb開発に使うPythonライブラリ

Webから自動的に情報を収集する「スクレイピング」や、WebAPIとの通信を行うためのライブラリも、Pythonでは充実しています。

Requests(HTTPリクエストの送受信)

Requestsは、WebサイトやAPIに対してHTTPリクエストを送信するためのライブラリです。Pythonの標準ライブラリにもurllibという類似機能がありますが、Requestsはより直感的なコードで書けることから広く採用されています。

import requests

response = requests.get("https://api.example.com/data")
print(response.status_code)  # 200
print(response.json())        # JSONレスポンスを辞書として取得

Webスクレイピングの最初のステップは「ページのHTMLを取得すること」であり、そのためにRequestsを使います。また、外部APIからデータを取得する場合にも活躍します。

インストールコマンド

pip install requests

BeautifulSoup(HTMLの解析とデータ抽出)

BeautifulSoup(bs4)は、HTMLやXMLを解析してデータを抽出するためのライブラリです。Requestsで取得したHTMLのソースコードから、特定のタグや要素を簡単に取り出せます。

from bs4 import BeautifulSoup
import requests

html = requests.get("https://example.com").text
soup = BeautifulSoup(html, "html.parser")

# h1タグのテキストを取得
title = soup.find("h1").text
print(title)

# すべてのリンクを取得
links = [a["href"] for a in soup.find_all("a", href=True)]
print(links)

RequestsとBeautifulSoupを組み合わせることで、ニュースサイトの記事一覧や商品価格など、Webページ上のさまざまな情報を自動収集できます。スクレイピング入門として最も多く使われる組み合わせです。

インストールコマンド

pip install beautifulsoup4

Selenium(ブラウザの自動操作)

Seleniumは、実際のWebブラウザをプログラムから操作するためのライブラリです。JavaScriptで動的に生成されるコンテンツや、ログインが必要なページのスクレイピングに適しています。

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get("https://example.com")

# 入力フォームにテキストを入力
input_box = driver.find_element(By.NAME, "q")
input_box.send_keys("Python ライブラリ")
input_box.submit()

driver.quit()

RequestsとBeautifulSoupでは取得できない動的ページの情報もSeleniumなら対応可能です。自動テストにも広く使われており、エンジニアとして知っておくと実務の幅が広がります。

インストールコマンド

pip install selenium

機械学習・AI開発に使うPythonライブラリ

AIや機械学習の分野でもPythonは標準的な言語として使われており、強力なライブラリが揃っています。

Scikit-learn(機械学習アルゴリズムの実装)

Scikit-learnは、分類・回帰・クラスタリングなどの機械学習アルゴリズムをまとめたライブラリです。数十種類のアルゴリズムが統一された書き方で使えるため、初心者が機械学習を学ぶ出発点として最適です。

from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 5, 4, 5])

model = LinearRegression()
model.fit(X, y)

print(model.predict([[6]]))  # [5.4...]

主な機能には以下があります。

  • 線形回帰・ロジスティック回帰
  • 決定木・ランダムフォレスト
  • サポートベクターマシン(SVM)
  • k-meansクラスタリング
  • データの前処理・評価指標の計算

このように多彩なアルゴリズムを備えており、NumPyやPandasと合わせて使うことが多く、データ分析の延長として機械学習を始めるには最も取り組みやすいライブラリです。

インストールコマンド

pip install scikit-learn

TensorFlow・Keras(ディープラーニングの定番ツール)

TensorFlowはGoogleが開発したディープラーニングフレームワークで、ニューラルネットワークの構築・学習・デプロイまでをカバーします。

KerasはTensorFlowの高レベルAPIとして統合されており、少ないコードでモデルを構築できます。

import tensorflow as tf
from tensorflow import keras

model = keras.Sequential([
    keras.layers.Dense(64, activation="relu", input_shape=(10,)),
    keras.layers.Dense(1)
])

model.compile(optimizer="adam", loss="mse")

画像認識・自然言語処理・音声認識など、高度なAIアプリケーション開発に使われます。Scikit-learnで機械学習の基礎を学んだ後、より深い学習に進むステップとして取り組むのが一般的です。

インストールコマンド

pip install tensorflow

Pythonライブラリの選び方とインストール方法

ライブラリの種類を把握したところで、実際にどう選んでどうインストールするかを整理します。

目的別のライブラリ選び方

ライブラリ選びで迷ったときは、「何をしたいか」から逆算するのが最も効率的です。

やりたいこと使うライブラリ
数値計算・行列演算NumPy
データ整形・集計・分析Pandas
グラフ・可視化Matplotlib
WebページのHTML取得Requests
HTMLの解析・データ抽出BeautifulSoup
動的ページのスクレイピングSelenium
機械学習(分類・回帰など)Scikit-learn
ディープラーニング・AITensorFlow / Keras

複数のライブラリを組み合わせるケースも多く、たとえばデータ分析であれば「Pandasでデータ整形 → Matplotlibでグラフ描画」、スクレイピングであれば「RequestsでHTML取得 → BeautifulSoupで解析」という流れが定番です。

pip installの基本的な使い方

外部ライブラリのインストールには pipコマンドを使います。基本的な使い方を以下にまとめます。

ライブラリのインストール

pip install ライブラリ名

バージョンを指定してインストール

pip install numpy==1.24.0

インストール済みのライブラリ一覧を確認

pip list

ライブラリのアンインストール

pip uninstall ライブラリ名

requirements.txtからまとめてインストール

チームでの開発やプロジェクト共有では、requirements.txtというファイルに使用ライブラリを記載してまとめてインストールするのが一般的です。

pip install -r requirements.txt

また、仮想環境(venv) を使うことで、プロジェクトごとにライブラリのバージョンを管理できます。複数のプロジェクトを並行して扱う場合は、仮想環境の利用を強くおすすめします。

まとめ

Pythonライブラリは、「何をしたいか」によって選ぶべきものが決まります。データ分析にはNumPy・Pandas・Matplotlib、WebスクレイピングにはRequests・BeautifulSoup・Selenium、機械学習にはScikit-learn・TensorFlowといった具合に、用途ごとに定番のライブラリが確立されています。

まずは自分の目的を明確にし、対応するライブラリを一つずつ手を動かして試してみることが上達への近道です。ライブラリを使いこなすことで、コードの量を減らしながら高度な処理を実現できるようになり、Pythonの真の強さを実感できるでしょう。