WEB問題集
あるEC企業のデータサイエンティストは、月次売上データの分布を確認しています。ヒストグラムは右側に長い裾を持ち、平均が中央値より大きく外れており、対数変換によって左右対称に近い形に修正できそうです。データの分布特性を最も適切に説明しているのはどれですか。
正解:A
正解の根拠
平均が中央値を上回り右側に裾が伸びる分布は正の歪度(right-skewed)であり、対数変換で歪みが緩和されます。これは売上や所得などの非負連続値で頻出します。
| 歪度 | 形状 | 有効な変換 |
|---|---|---|
| 正(>0) | 右裾長い | log, sqrt, Box-Cox |
| 負(<0) | 左裾長い | べき乗(x^2 など) |
| 0 | 対称 | 不要 |
import numpy as np
import pandas as pd
from scipy.stats import skew
s = skew(df['sales']) # > 0 で右裾
df['log_sales'] = np.log1p(df['sales'])不正解の理由
- B: 負の歪度は左裾が長い分布であり、平均<中央値となるため設定と矛盾します。
- C: 尖度は裾の重さを表す指標で、左右対称性を示す歪度とは別の統計量です。
- D: 平均と中央値が一致しないので正規分布とは言えず、変換不要との結論は誤りです。
金融機関のアナリストは、口座残高列に少数の極端に大きい値が含まれることに気付きました。データは非対称で正規性が崩れており、四分位範囲を基準に外れ値を検出する手法を採用したいと考えています。最も適切な検出ルールはどれですか。
正解:B
正解の根拠
Tukey の IQR ルールは中央値と四分位数に基づく頑健な手法で、非正規分布や外れ値が混在するデータでも安定して機能します。Q1 − 1.5×IQR 未満、Q3 + 1.5×IQR 超を外れ値候補とします。
| 手法 | 前提 | 頑健性 |
|---|---|---|
| Z-score | 近似正規 | 低(外れ値で歪む) |
| IQR ルール | 分布を仮定しない | 高 |
| Isolation Forest | 多変量 | 中〜高 |
q1, q3 = df['bal'].quantile([0.25, 0.75])
iqr = q3 - q1
mask = (df['bal'] q3 + 1.5*iqr)不正解の理由
- A: Z-score は正規性を仮定するため非対称で裾の重い分布では適切に機能しません。
- C: 平均と分散自体が外れ値で歪み、最大最小を必ず除く運用は情報損失が大きいです。
- D: 中央値以下を外れ値とする論理は誤りで、距離が大きい点こそ候補とすべきです。
マーケティング部門は、年齢と購入金額の関係性を確認したいと考えています。両変数とも数値ですが、購入金額は外れ値の影響で歪んでおり、線形ではなく単調な関係が成立しているか調べたいです。最も適切な相関係数はどれですか。
正解:B
正解の根拠
スピアマンの順位相関は値そのものではなく順位を用いるため外れ値に頑健で、非線形でも単調であれば相関を捉えられます。年齢と購入金額のような順序的傾向の評価に適しています。
| 係数 | 関係 | 外れ値耐性 |
|---|---|---|
| Pearson | 線形 | 低 |
| Spearman | 単調 | 高 |
| Kendall τ | 順序一致 | 高 |
不正解の理由
- A: ピアソンは線形性と正規性を前提とし、外れ値で値が大きく揺らぎ信頼性が下がります。
- C: コサイン類似度はベクトル方向の評価で、変数間の相関係数とは目的が異なります。
- D: Cramér の V はカテゴリ同士の関連指標で、数値変数の相関には用いません。
ある製造業のデータサイエンティストは、回帰モデルに使う特徴量間で多重共線性が疑われると指摘されました。各説明変数に対する分散拡大係数を計算して、共線性の強さを定量化したいと考えています。一般的にどの値を超えると警戒すべきとされますか。
正解:D
正解の根拠
分散拡大係数(VIF)は VIF_i = 1 / (1 − R_i^2) で定義され、ある説明変数を他の説明変数で回帰した決定係数 R_i^2 が高いほど大きくなります。一般的に VIF > 10 で多重共線性が強いと判断します。
| VIF | 解釈 | 対処 |
|---|---|---|
| < 5 | 問題なし | そのまま使用可 |
| 5〜10 | 注意 | 変数選択を検討 |
| > 10 | 強い共線性 | 除外/PCA/正則化 |
from statsmodels.stats.outliers_influence import variance_inflation_factor
vifs = [variance_inflation_factor(X.values, i) for i in range(X.shape[1])]不正解の理由
- A: p 値は係数の有意性を表し、説明変数同士の共線性を直接示す指標ではないです。
- B: VIF は 1 以上の値で、0.5 を下回ることはなく閾値設定として誤りです。
- C: 決定係数の二乗根は単に相関の絶対値で、多重共線性判定の指標ではありません。
あるヘルスケア企業のデータサイエンティストは、トレーニングデータが正規分布に従うかを視覚的に検証したいと考えています。理論分位点と標本分位点を比較するプロットを使って、点が直線上に並ぶかを確認したいです。最も適した可視化はどれですか。
正解:C
正解の根拠
Q-Q(Quantile-Quantile)プロットは標本分位点と理論分布の分位点を散布し、直線に近ければ仮定した分布に従うと判断できる古典的手法です。正規性検証の第一手段として広く使われます。
| 可視化 | 用途 |
|---|---|
| Q-Q プロット | 分布の同定 |
| ヒストグラム | 形状の概観 |
| 箱ひげ図 | 外れ値と分散 |
import scipy.stats as stats
stats.probplot(df['x'], dist='norm', plot=plt)不正解の理由
- A: 棒グラフはカテゴリ集計用で、連続値の分布検証には適していません。
- B: ヒストグラムだけでは正規性の厳密判定は難しく、ビン数依存で印象も変わります。
- D: 散布図は2変数の関係を見る図で、単一変数の正規性検証には用いられません。
