0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データ解析に役立つNumPyの基本操作

1. CSVファイルの読み込みと保存

データ解析では、CSVファイルを読み込んで操作することがよくあります。
NumPyを使うと、これが簡単にできます。

import numpy as np

# CSVファイルの読み込み
data = np.genfromtxt('data.csv', delimiter=',', skip_header=1)
print(data)

# 配列をCSVファイルに保存
np.savetxt('output.csv', data, delimiter=',')
2. データのフィルタリング

大規模なデータセットから条件に合ったデータを抽出するのもNumPyで簡単に行えます。

# サンプルデータ
data = np.array([
    [1, 100],
    [2, 200],
    [3, 300],
    [4, 400],
    [5, 500]
])

# 2列目の値が300以上の行を抽出
filtered_data = data[data[:, 1] >= 300]
print(filtered_data)
3. 基本統計量の計算

NumPyを使うと、基本的な統計量を簡単に計算できます。

# サンプルデータ
data = np.array([1, 2, 3, 4, 5])

# 平均
mean = np.mean(data)
print(f"平均: {mean}")

# 中央値
median = np.median(data)
print(f"中央値: {median}")

# 標準偏差
std = np.std(data)
print(f"標準偏差: {std}")
4. 欠損値の処理

データ解析では、欠損値の処理が重要です。
NumPyを使って、欠損値を簡単に扱うことができます。

# サンプルデータ(欠損値を含む)
data = np.array([1, 2, np.nan, 4, 5])

# 欠損値を含むデータの平均
mean_with_nan = np.nanmean(data)
print(f"欠損値を無視した平均: {mean_with_nan}")

# 欠損値を0で置換
data_without_nan = np.nan_to_num(data)
print(f"欠損値を0で置換: {data_without_nan}")
5. データの正規化

データの正規化は、異なるスケールのデータを比較する際に役立ちます。

# サンプルデータ
data = np.array([1, 2, 3, 4, 5])

# 最小-最大スケーリング
normalized_data = (data - np.min(data)) / (np.max(data) - np.min(data))
print(f"正規化データ: {normalized_data}")
6. 行列演算

NumPyでは、行列の演算も簡単に行えます。

# サンプルデータ
matrix1 = np.array([[1, 2], [3, 4]])
matrix2 = np.array([[5, 6], [7, 8]])

# 行列の積
product = np.dot(matrix1, matrix2)
print(f"行列の積:\n{product}")

# 要素ごとの積
elementwise_product = matrix1 * matrix2
print(f"要素ごとの積:\n{elementwise_product}")

以上


前回の記事

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?