@@ -142,9 +142,9 @@ def test_selected_targets(seedn,
142
142
nonzero ,
143
143
dispersion = dispersion )
144
144
145
- result = conv .selective_MLE (observed_target ,
145
+ result , _ , _ , X1 , X2 , X3 , X4 = conv .selective_MLE (observed_target ,
146
146
cov_target ,
147
- cov_target_score )[ 0 ]
147
+ cov_target_score )
148
148
estimate = result ['MLE' ]
149
149
pval = result ['pvalue' ]
150
150
intervals = np .asarray (result [['lower_confidence' , 'upper_confidence' ]])
@@ -156,7 +156,7 @@ def test_selected_targets(seedn,
156
156
# print("check ", np.asarray(result['MLE']), np.asarray(result['unbiased']))
157
157
158
158
#return pval[beta[nonzero] == 0], pval[beta[nonzero] != 0], coverage, intervals
159
- return result ['MLE' ], result ['lower_confidence' ], result ['upper_confidence' ]
159
+ return result ['MLE' ], result ['lower_confidence' ], result ['upper_confidence' ], X1 , X2 , X3 , X4
160
160
161
161
162
162
def test_instance ():
@@ -282,58 +282,62 @@ def test_selected_targets_disperse(n=500,
282
282
return pval [beta [nonzero ] == 0 ], pval [beta [nonzero ] != 0 ], coverage , intervals
283
283
284
284
285
- def test_inf (nsim = 500 , full = False ):
286
- P0 , PA , cover , length_int = [], [], [], []
287
- from statsmodels .distributions import ECDF
288
-
289
- n , p , s = 500 , 100 , 0
290
-
291
- for i in range (nsim ):
292
- if full :
293
- if n > p :
294
- full_dispersion = True
295
- else :
296
- full_dispersion = False
297
- p0 , pA , cover_ , intervals = test_full_targets (n = n , p = p , s = s , full_dispersion = full_dispersion )
298
- avg_length = intervals [:, 1 ] - intervals [:, 0 ]
299
- else :
300
- full_dispersion = True
301
- p0 , pA , cover_ , intervals = test_selected_targets (n = n , p = p , s = s , full_dispersion = full_dispersion )
302
- avg_length = intervals [:, 1 ] - intervals [:, 0 ]
303
-
304
- cover .extend (cover_ )
305
- P0 .extend (p0 )
306
- PA .extend (pA )
307
- # print(
308
- # np.array(PA) < 0.1, np.mean(P0), np.std(P0), np.mean(np.array(P0) < 0.1), np.mean(np.array(PA) < 0.1), np.mean(cover),
309
- # np.mean(avg_length), 'null pvalue + power + length')
310
- print ("coverage and lengths " , np .mean (cover ), np .mean (avg_length ))
285
+ # def main (nsim=500, full=False):
286
+ # P0, PA, cover, length_int = [], [], [], []
287
+ # from statsmodels.distributions import ECDF
288
+ #
289
+ # n, p, s = 500, 100, 0
290
+ #
291
+ # for i in range(nsim):
292
+ # if full:
293
+ # if n > p:
294
+ # full_dispersion = True
295
+ # else:
296
+ # full_dispersion = False
297
+ # p0, pA, cover_, intervals = test_full_targets(n=n, p=p, s=s, full_dispersion=full_dispersion)
298
+ # avg_length = intervals[:, 1] - intervals[:, 0]
299
+ # else:
300
+ # full_dispersion = True
301
+ # p0, pA, cover_, intervals = test_selected_targets(n=n, p=p, s=s, full_dispersion=full_dispersion)
302
+ # avg_length = intervals[:, 1] - intervals[:, 0]
303
+ #
304
+ # cover.extend(cover_)
305
+ # P0.extend(p0)
306
+ # PA.extend(pA)
307
+ # # print(
308
+ # # np.array(PA) < 0.1, np.mean(P0), np.std(P0), np.mean(np.array(P0) < 0.1), np.mean(np.array(PA) < 0.1), np.mean(cover),
309
+ # # np.mean(avg_length), 'null pvalue + power + length')
310
+ # print("coverage and lengths ", np.mean(cover), np.mean(avg_length))
311
311
312
312
313
313
def main (nsim = 50 ):
314
314
315
315
import pandas as pd
316
- column_names = ["Experiment Replicate" , "MLE" , "Lower Conf" , "Upper Conf" ]
316
+ column_names = ["Experiment Replicate" , "MLE" , "Lower Conf" , "Upper Conf" , "X1" , "X2" , "X3" , "X4" ]
317
317
master_DF = pd .DataFrame (columns = column_names )
318
318
DF = pd .DataFrame (columns = column_names )
319
319
320
320
n , p , s = 500 , 100 , 5
321
321
for i in range (nsim ):
322
322
full_dispersion = True
323
- mle , lower_conf , upper_conf = test_selected_targets (n = n , p = p , s = s , signal_fac = 1.2 , full_dispersion = full_dispersion , seedn = i )
323
+ mle , lower_conf , upper_conf , X1 , X2 , X3 , X4 = test_selected_targets (seedn = i , n = n , p = p , s = s , signal_fac = 1.2 , full_dispersion = full_dispersion )
324
324
#print("check ", mle, lower_conf, upper_conf)
325
325
DF ["MLE" ] = pd .Series (mle )
326
326
DF ["Lower Conf" ] = pd .Series (lower_conf )
327
327
DF ["Upper Conf" ] = pd .Series (upper_conf )
328
328
DF ["Experiment Replicate" ] = pd .Series ((i * np .ones (len (mle ),int )).tolist ())
329
+ DF ["X1" ] = pd .Series (X1 )
330
+ DF ["X2" ] = pd .Series (X2 )
331
+ DF ["X3" ] = pd .Series (X3 )
332
+ DF ["X4" ] = pd .Series (X4 )
329
333
330
334
master_DF = DF .append (master_DF , ignore_index = True )
331
335
332
336
import os
333
337
outpath = os .path .dirname (__file__ )
334
338
335
- outfile_mse_html = os .path .join (outpath , "compare_mle_old .html" )
336
- outfile_mse_csv = os .path .join (outpath , "compare_mle_old .csv" )
339
+ outfile_mse_html = os .path .join (outpath , "simple_example .html" )
340
+ outfile_mse_csv = os .path .join (outpath , "simple_example .csv" )
337
341
338
342
master_DF .to_html (outfile_mse_html , index = False )
339
343
master_DF .to_csv (outfile_mse_csv , index = False )
0 commit comments