質問編集履歴
4
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -246,4 +246,38 @@
|
|
246
246
|
x3_I NaN
|
247
247
|
x4 NaN
|
248
248
|
x9 NaN
|
249
|
-
dtype: float64]]
|
249
|
+
dtype: float64]]
|
250
|
+
|
251
|
+
【デバッグ】
|
252
|
+
```python
|
253
|
+
コード
|
254
|
+
``
|
255
|
+
|
256
|
+
ちなみに、出力の差分としましては、うまくいっているデータの時は、
|
257
|
+
関数Mahala2の中でデバッグ表示しているベクトルについて、
|
258
|
+
|
259
|
+
vec is [[-0.40788125]
|
260
|
+
[ 0.00139516]
|
261
|
+
[ 0.00359367]
|
262
|
+
[ 0.00180594]
|
263
|
+
[ 0.00321283]]
|
264
|
+
|
265
|
+
となっているのですが、NGの時は以下の様になっております。
|
266
|
+
|
267
|
+
vec is [[x1_E 0.000891
|
268
|
+
dtype: float64]
|
269
|
+
[x3_I 0.002092
|
270
|
+
dtype: float64]
|
271
|
+
[x2_K 0.000432
|
272
|
+
dtype: float64]
|
273
|
+
[x4 0.011538
|
274
|
+
dtype: float64]
|
275
|
+
[x1_F 0.000403
|
276
|
+
dtype: float64]
|
277
|
+
[x1_D 0.002242
|
278
|
+
dtype: float64]
|
279
|
+
[x9 0.010253
|
280
|
+
dtype: float64]
|
281
|
+
[-1.0186953967441772]
|
282
|
+
[x1_C 0.001979
|
283
|
+
dtype: float64]]`
|
3
変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,9 +3,10 @@
|
|
3
3
|
引数のベクトルの値は、ちゃんと入っているようですし、"abalone.data.txt"分析時のデバッグでも、ほぼ同様にベクトルの値が出力され、行列式の値もほぼ近いのですが、不思議なことに、その場合はちゃんと分散共分散行列の逆行列が求まっています。。。変数vecの値の入り方が違うのでしょうか?
|
4
4
|
|
5
5
|
【環境】Window10 64bit, chrome
|
6
|
-
【コード】
|
7
6
|
|
8
7
|
|
8
|
+
```Python
|
9
|
+
|
9
10
|
def step_aic(model, exog, endog, **kwargs):
|
10
11
|
"""
|
11
12
|
This select the best exogenous variables with AIC
|
@@ -176,7 +177,9 @@
|
|
176
177
|
plt.scatter(hl, X.dot(res.params), color="k", )
|
177
178
|
|
178
179
|
plt.grid()
|
180
|
+
```
|
179
181
|
|
182
|
+
|
180
183
|
【出力】
|
181
184
|
|
182
185
|
(x1_E 0.090009
|
2
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -77,10 +77,6 @@
|
|
77
77
|
d = pd.read_csv('flare.data2.txt',header=None,skiprows=1,delim_whitespace=True,names=('x1','x2','x3','x4','x5','x6','x7','x8','x9','x10','y1','y2','y3'))
|
78
78
|
d.head()
|
79
79
|
df2 = pd.get_dummies(d)
|
80
|
-
#print(df2)
|
81
|
-
#df2['x6'].unique()
|
82
|
-
#df2.head()
|
83
|
-
#df2.columns
|
84
80
|
model = step_aic(smf.ols,['x4','x5','x6','x7','x8','x9','x10','x1_B','x1_C','x1_D','x1_E','x1_F','x1_H','x2_A','x2_H','x2_K','x2_R','x2_S','x2_X','x3_C','x3_I','x3_O','x3_X'],['y1'],data=df2)
|
85
81
|
|
86
82
|
|
@@ -145,7 +141,6 @@
|
|
145
141
|
|
146
142
|
print((x1_E, x3_I, x2_K, x4, x1_F, x1_D, x9, x1_C))
|
147
143
|
for hl in hl_l:
|
148
|
-
#X = sp.array([1, hl, ml, wl, prw, ppl, gw])
|
149
144
|
X = sp.array([1,x1_E, x3_I, x2_K, x4, x1_F, x1_D, x9, hl, x1_C])
|
150
145
|
hat_y.append(X.dot(res.params))
|
151
146
|
plt.plot(hl_l, hat_y)
|
@@ -162,7 +157,6 @@
|
|
162
157
|
D2.append(D2_0)
|
163
158
|
print(D2_0)
|
164
159
|
D2 = sp.array(D2)
|
165
|
-
#print(D2.shape)
|
166
160
|
|
167
161
|
|
168
162
|
interval095 = t_0025 * sp.sqrt((1/n + D2 / (n-1)) * res.scale)
|
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Pythonのjupyter notebookで、UCI machine learning repositoryのあるデータ('flare.data2.txt')を重回帰分析すると、エラーが出ます。同じ手順で、"abalone.data.txt"というデータを分析した際には全く問題が無いのですが、なぜかわからずにおります。
|
1
|
+
Pythonのjupyter notebookで、UCI machine learning repositoryのあるデータ('flare.data2.txt')を重回帰分析しております。自作関数によりStepAICで変数選択を行ったのち、信頼区間・予測区間を求めようとすると、エラーが出ます。同じ手順で、"abalone.data.txt"というデータを分析した際には全く問題が無いのですが、なぜかわからずにおります。
|
2
2
|
エラーが出ているのは、マハラノビスの距離を求めるところで、分散共分散行列の逆行列がNANになってしまっている(下記の"mahara is..."以下の出力)ためなのですが、なぜそのようになるのかが分かりません。
|
3
3
|
引数のベクトルの値は、ちゃんと入っているようですし、"abalone.data.txt"分析時のデバッグでも、ほぼ同様にベクトルの値が出力され、行列式の値もほぼ近いのですが、不思議なことに、その場合はちゃんと分散共分散行列の逆行列が求まっています。。。変数vecの値の入り方が違うのでしょうか?
|
4
4
|
|