**TAIEX.ML.s14_Box Plot.箱型圖
![**TAIEX.ML.s14_Box Plot.箱型圖](/content/images/size/w2000/2024/07/data-src-image-81743baa-15eb-4a2b-bf14-d8016e415625-1.png)
Box Plot Matrix Map 提供了對各變數數據分佈的直觀了解,有助於識別數據中的異常值和分佈特徵。通過觀察這些圖表,可以為後續的數據清洗和特徵工程提供參考。
Box Plot Matrix Map 圖表顯示了每個變數的數據分佈情況,其中包括中位數、四分位數範圍、異常值等信息。以下是圖表的摘要說明:
- 數據範圍:
- 大多數變數的數據範圍較小,集中在較低的數值區間。
Volume
和OBV
的數據範圍明顯大於其他變數,因此在圖表中顯示時有較大的差異。
- 異常值(Outliers):
- 幾乎所有變數都存在異常值,這些異常值顯示為圖表中的小圓點。
- 特別是
Volume
、Band Width
、MACD Line
、Signal Line
等變數,異常值較多且分佈較廣。
- 變數分佈:
- 部分變數(如
Aroon Up
、Aroon Down
、RSI7
、RSI14
等)顯示出較為均勻的分佈。 - 其他變數(如
CCI20
、CMO14
、Market Return
、Stock Return
等)則顯示出一定程度的偏態,數據集中在某些區間。
- 部分變數(如
- 比較分析:
- 多數技術指標變數如
MA7
、MA21
、MA50
、MA100
等,數據範圍和分佈比較相似,顯示出技術指標之間的相關性。 - 市場回報(
Market Return
)和個股回報(Stock Return
)的分佈類似,顯示出它們的相關性。
- 多數技術指標變數如
![](https://thepearl.ghost.io/content/images/2024/06/data-src-image-81743baa-15eb-4a2b-bf14-d8016e415625.png)
import math
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# 加載數據
file_path = '/content/drive/My Drive/MSCI_Taiwan_30_data_with_OBV.csv'
data = pd.read_csv(file_path)
# 排除非數值列
numeric_data = data.drop(columns=['Date', 'ST_Code', 'ST_Name'])
# 獲取變數列表
variables = numeric_data.columns
# 設置圖表大小
num_vars = len(variables)
num_cols = 4
num_rows = math.ceil(num_vars / num_cols)
fig, axes = plt.subplots(num_rows, num_cols, figsize=(20, num_rows * 5))
# 繪製每個變數的 Box Plot
for i, var in enumerate(variables):
row = i // num_cols
col = i % num_cols
sns.boxplot(data=numeric_data[var], ax=axes[row, col])
axes[row, col].set_title(f'Box Plot of {var}')
axes[row, col].set_xlabel(var)
axes[row, col].set_ylabel('Value')
# 調整佈局
plt.tight_layout()
plt.show()