Pythonのデータ分析ライブラリであるPandasを使用して、データセット内の外れ値を置換する方法について説明します。
外れ値を含むデータの作成
まずは外れ値を含むデータセットを作成します。以下のコードは、ランダムな数値を生成し、その中に一部の外れ値を含むデータフレームを作成します。
import random
import pandas as pd
num = 100
val_range = [10, 20]
outlier_val = 1000
outlier_num = random.randrange(num)
val_list = []
for i in range(num):
if i == outlier_num:
val_list.append([i, outlier_val])
else:
val_list.append([i, random.uniform(val_range[0], val_range[1])])
df = pd.DataFrame(val_list, columns=["x", "y"])
print(df)
外れ値の確認
データセットに外れ値が含まれているかどうかを確認するために、.describe()
メソッドを使用します。
print(df.describe())
外れ値の置換
外れ値を置換するために、Pandasの.clip()
メソッドを使用します。このメソッドは、指定した閾値を超える値を閾値に置換します。
lower, upper = df.quantile(0.01), df.quantile(0.99)
df = df.clip(lower, upper)
以上で、PythonとPandasを使用してデータセット内の外れ値を置換する方法について説明しました。データ分析において、外れ値の適切な取り扱いは重要なステップの一つです。この記事が皆さんのデータ分析作業に役立つことを願っています。.