2015-11-03 24 views
7

Studiuję ten fragment kodu Pythona. Co oznacza X = X[:, 1] w ostatnim wierszu?Znaczenie X = X [:, 1] w Pythonie

def linreg(X,Y): 
    # Running the linear regression 
    X = sm.add_constant(X) 
    model = regression.linear_model.OLS(Y, X).fit() 
    a = model.params[0] 
    b = model.params[1] 
    X = X[:, 1] 

Odpowiedz

17
x = np.random.rand(3,2) 

x 
Out[37]: 
array([[ 0.03196827, 0.50048646], 
     [ 0.85928802, 0.50081615], 
     [ 0.11140678, 0.88828011]]) 

x = x[:,1] 

x 
Out[39]: array([ 0.50048646, 0.50081615, 0.88828011]) 

Więc co, że linia nie jest sliced tablica, biorąc wszystkie wiersze (:), ale utrzymując drugą kolumnę (1)

+0

dzięki dużo Leb – Taewan

+0

nie ma problemu, zadowolony, że pomogło. – Leb

+0

Twój link jest niepoprawny (wskazuje na dokumenty w języku Python 2.3). Zamiast tego użyj [this] (http://docs.scipy.org/doc/numpy-1.10.1/reference/arrays.indexing.html#basic-slicing-andindinding) z "numpy' dokuments. – MattDMo