見出し画像

Pythonでデータ加工や分析をする際によく使用するライブラリと簡単なコード紹介

お疲れ様です。ちゃんです。
今回は表題の件について、ご紹介しようと思います。
あくまで自分が使っているものなので、より良い書き方があるかもしれません。その場合はコメント等で教えていただけると幸いです。

自己紹介

●どんな人間か
・社会人2年目
・データアナリストとして活躍中
・分析の際にPythonを軽く使用している
・他にはSQLやBigquery、自社BIツールを普段は使用している

●保有資格
・簿記2級
・統計検定3級
・英検準1級
・G検定
など

そもそもPythonって何ができるの?

Pythonはその汎用性と使いやすさから、さまざまな分野で活用されています。以下はPythonができる主なことです。(Chat GPTより引用)

1.ウェブ開発
・DjangoやFlaskなどのフレームワークを使ってウェブアプリケーションを開発できます。
・Beautiful SoupやScrapyを用いてウェブスクレイピングやデータ収集が可  能です。
2.データ分析と科学計算
・NumPyやPandasを使用してデータの処理、変換、解析が容易です。
・SciPyライブラリは科学的な計算や統計分析に適しています。
3.機械学習と人工知能
・Scikit-Learn、TensorFlow、PyTorchなどのライブラリで機械学習モデルを構築できます。
・深層学習、自然言語処理、コンピュータビジョンなど幅広いAIタスクに利用されています。
4.デスクトップアプリケーション
・TkinterやPyQtを使用してクロスプラットフォームのデスクトップアプリケーションを開発できます。
5.ゲーム開発
・Pygameなどのライブラリを活用して2Dゲームを制作できます。
6.自動化とスクリプト作成
・タスクの自動化やバッチ処理のためにPythonスクリプトを作成できます。
7.データベース操作
・MySQL、SQLite、PostgreSQLなどのデータベースと連携し、データの取得や操作が可能です。
8.ネットワークプログラミング
・ソケットプログラミングを通じてネットワークアプリケーションを構築できます。
9.組み込みシステム
・ラズベリーパイやマイコンと連携して組み込みシステムを制御できます。
10.ビッグデータとクラウドコンピューティング
・Apache Spark、Hadoop、AWS Lambdaなどのツールと組み合わせてビッグデータ処理を行えます。
11.教育
・Pythonはプログラミング初学者にも優しい言語であり、プログラミング教育にも広く利用されています。

普段の業務では
データ分析と科学計算
・自動化とスクリプト作成
を行うためにPythonを使用しています。
この記事はデータ分析にフォーカスを置いたものになります。
自動化の話は長くなってしまうので今回は触れませんが、Pythonで業務の一部を自動化することで面倒な手作業をボタン一つ押すだけで対応できるようになったりします。組むまでは大変ですが組めれば本当に楽になります。
次回の記事で書くかも。

よく使うライブラリと実例

1. Pandas
2. Numpy
3. os
4. Matplotlib

この4つ(特にPandas)が使えれば、簡単なデータ加工と分析は出来ると思います。

それぞれのライブラリで何ができるか簡単に紹介します。

3. NumPy:
多次元配列の操作: NumPyは高性能な多次元配列を提供し、行列計算やテンソル操作などの数値計算を高速に実行できます。
数学関数: 数学関数や線形代数演算、ランダムサンプリングなどの機能を提供します。
ブロードキャスト: 配列の形状を自動的に調整して演算を行うブロードキャスト機能を持っています。
4. Matplotlib:
データの可視化: Matplotlibは2Dグラフ、3Dグラフ、ヒストグラム、散布図、バー チャートなどさまざまなグラフの描画が可能です。
カスタマイズ: グラフのスタイルや軸ラベル、タイトル、凡例などのカスタマイズが行えます。
対話的な可視化: Jupyter Notebookなどで対話的なグラフを生成できます。

簡単なコードも併せてライブラリを紹介

Pandas: データの読み込みと表示

import pandas as pd

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

# データの先頭行を表示
print(data.head())

このコードでは、Pandasライブラリを使用してCSVファイルを読み込み、head()関数を使ってデータの最初の数行を表示しています。Pandasはデータの読み込み、整形、表示など、データ処理の多くのタスクを簡単に実行できる優れたツールです。

Pandasで出来ること
・データ処理と分析:

Pandasはデータフレームとシリーズと呼ばれるデータ構造を提供し、データの読み込み、クリーニング、変換、集計などのデータ処理を容易にします。
・データの結合:
複数のデータソースを結合し、データを統合するためのツールを提供します。
・欠損値処理:
欠損値を検出し、除去または埋める方法を提供します。
・データの可視化:
MatplotlibやSeabornと連携して、データの可視化が可能です。


osモジュール: ファイル操作

import os

# ファイルの存在確認
if os.path.exists('file.txt'):
    print('file.txtが存在します。')

# ディレクトリの作成
os.mkdir('new_directory')

# ファイルの移動
os.rename('old_file.txt', 'new_file.txt')

osモジュールはファイルやディレクトリの操作に役立ちます。上記のコードでは、ファイルの存在確認、新しいディレクトリの作成、ファイルのリネームなどの操作を紹介しています。これはファイルシステムを操作する際に便利です。

OSモジュールで出来ること
ファイルおよびディレクトリの操作:
osモジュールはファイルやディレクトリを作成、削除、移動、リネームするための関数を提供します。
ファイルの存在確認:
ファイルやディレクトリの存在を確認できます。
ファイルパスの操作:
ファイルパスの操作や相対パス、絶対パスの取得ができます。


NumPy: 配列の操作と計算

import numpy as np

# NumPy配列の作成
arr = np.array([1, 2, 3, 4, 5])

# 配列の合計計算
total = np.sum(arr)

# 配列の平均計算
average = np.mean(arr)

# 配列の要素に2を掛ける
doubled_arr = arr * 2

NumPyは高性能な数値計算ライブラリで、多次元配列を操作するのに役立ちます。上記のコードでは、NumPy配列の作成、合計と平均の計算、要素への演算が行われています。NumPyは科学計算やデータ処理において重要な役割を果たします。

NumPyで出来ること
・多次元配列の操作:
NumPyは高性能な多次元配列を提供し、行列計算やテンソル操作などの数値計算を高速に実行できます。
・数学関数:
数学関数や線形代数演算、ランダムサンプリングなどの機能を提供します。
・ブロードキャスト:
配列の形状を自動的に調整して演算を行うブロードキャスト機能を持っています。


Matplotlib: グラフの描画

import matplotlib.pyplot as plt

# データの準備
x = [1, 2, 3, 4, 5]
y = [10, 14, 8, 22, 6]

# 折れ線グラフの描画
plt.plot(x, y)

# グラフにタイトルとラベルを追加
plt.title('サンプルグラフ')
plt.xlabel('X軸')
plt.ylabel('Y軸')

# グラフの表示
plt.show()

Matplotlibはデータ可視化ライブラリで、さまざまな種類のグラフを描画できます。上記のコードでは、折れ線グラフを描画し、タイトルや軸ラベルを追加しています。Matplotlibはデータの視覚化に広く使用されます。
これらのコード例は、それぞれのライブラリの基本的な活用方法を示しています。これらのライブラリを活用することで、データ処理、ファイル操作、数値計算、データ可視化など、さまざまなタスクをPythonで効率的に実行できます。

Matplotlibで出来ること
・データの可視化:
Matplotlibは2Dグラフ、3Dグラフ、ヒストグラム、散布図、バー チャートなどさまざまなグラフの描画が可能です。
・カスタマイズ:
グラフのスタイルや軸ラベル、タイトル、凡例などのカスタマイズが行えます。
・対話的な可視化:
Jupyter Notebookなどで対話的なグラフを生成できます。

まとめ

今回は業務でPythonをどう活用しているか、またどんなライブラリを使用しているか簡単なサンプルコード付きで紹介しました。
途中にも記載しましたが、次回の記事ではどのようにしてPythonで業務を自動化させているのか簡単にご紹介できればと思います。

ここまで読んでいただきありがとうございました。
もしよろしければ、いいねやコメント頂けると今後の励みになるのでお願いします。

この記事が気に入ったらサポートをしてみませんか?