
学習シリーズ第7弾 Pythonによるデータ処理 (Pandas, NumPy)
こんにちは!ChatGPTの原田です!学習シリーズ第7弾は「Pythonによるデータ処理 (Pandas, NumPy)」について学びます!では本文へどうぞ!!
1. 前回の答え
まずは前回の答えから!前回の記事はこちら!
1.1 例外処理
def sum_integers(int_list):
if not int_list:
raise ValueError("The list is empty.")
total = 0
for item in int_list:
if not isinstance(item, int):
raise TypeError(f"The list contains a non-integer element: {item}")
total += item
return total
# テスト
try:
print(sum_integers([1, 2, 3])) # 出力:6
print(sum_integers([])) # 例外:ValueError
print(sum_integers([1, 2, "a"])) # 例外:TypeError
except (ValueError, TypeError) as e:
print(f"An error occurred: {e}")
1.2 ファイル操作
# ファイルを作成して書き込む
with open("example.txt", "w") as file:
file.write("Hello, World!\n")
file.write("This is a text file.\n")
# ファイルを開いて読む
try:
with open("example.txt", "r") as file:
content = file.read()
print(content)
except FileNotFoundError:
print("The file could not be found.")
上記のコードで、例外処理とファイル操作の基本的な用法を網羅しています。`try` と `except` ブロックを使用して例外を適切に処理し、`with open` ステートメントでファイル操作を行っています。これにより、ファイルは適切に閉じられ、リソースのリークを防ぐことができます。
2. 学習スタート!
第7弾スタートです!

2.1 Pandas

import pandas as pd
df = pd.DataFrame({
'Name': ['Alice', 'Bob'],
'Age': [30, 35],
})

2.2 NumPy

import numpy as np
arr = np.array([1, 2, 3])

この2つのライブラリは、データ分析や機械学習、科学計算など多くの場面で使用されます。基本的な操作を把握したら、自分でデータを読み込み、分析してみることをお勧めします!
3. 演習問題
ではChatGPT先生が作った演習問題を解いてみましょう!
1. Pandasによるデータ処理
PandasのDataFrameを使って、人の名前、年齢、性別を記録するテーブルを作成してください。
上で作成したDataFrameに新しい行を追加して、データを更新してください。
DataFrameから特定の条件(例:年齢が30以上)に合致する行だけを抽出してください。
2. NumPyによるデータ処理
NumPyを使って10x10の行列を作成し、その行列の各要素にランダムな数値を割り当ててください。
作成した行列の各行と各列の合計を計算してください。
行列内の最大値と最小値を見つけてください。
上記の問題に取り組むことで、PandasとNumPyの基本的な機能に慣れる良い機会になるでしょう!
第7弾ともなると少し難易度が上がりますね、、頑張りましょう!
まとめ
今回のまとめです!
Pandas
DataFrame: 二次元ラベル付きデータ構造で、SQLテーブルやExcelシートのようなものです。
データの追加と削除: 新しい行や列を簡単に追加・削除することができます。
フィルタリング: 条件に基づいてデータを抽出することが容易です。
データの操作: データをソートしたり、集計したりする多くのメソッドが用意されています。
NumPy
配列と行列: NumPyは大規模な配列や行列の計算に特化しています。
数学関数: 基本的な算術計算から、統計や線形代数の計算まで多くの数学関数が提供されています。
高速計算: Cで書かれた内部ルーチンによって、非常に高速な計算が可能です。
これらの知識は、データ解析や機械学習、データ可視化など、多くの場面で役立つ基本的なスキルです。今回は以上になります!