2016-10-25 28 views
0

如果我想執行類似列文的經由SciPy的統計方差相等的測試,這對於在字典中的所有數據產生兩個輸出(檢驗統計量和p值),我將如何追加每個測試的輸出到兩個不同的列表?我想下面的代碼:的Python - 附加到多個陣列

test_stat[] 
p_value[] 
for i in range(0, n_data): 
    for j in range(1, n_name): 
     test_stat[i], p_value[i] = scipy.stats.levene(data[i][name[j-1]], 
                 data[i][name[j]], 
                 center='median') 

但是,這顯然不是去了解它的方式,因爲我不斷收到IndexError因爲列表分配索引超出範圍。

任何建議將不勝感激。謝謝!

回答

1

並非一切都需要在一個單一的線......這應該很好地工作:

test_stats = [] 
p_values = [] 
for i in range(0, n_data): 
    for j in range(1, n_name): 
     test_stat, p_value = scipy.stats.levene(data[i][name[j-1]], 
               data[i][name[j]], 
               center='median') 
     test_stats.append(test_stat) 
     p_values.append(p_value) 

儘管這當然會增加n_data * n_name行。