2012-04-17 10 views
26

मैं लाइन द्वारा एक प्रोग्राम लाइन तोड़ने की कोशिश कर रहा हूँ। Y डेटा का एक मैट्रिक्स है लेकिन मुझे .shape[0] पर कोई ठोस डेटा नहीं मिल रहा है।"शेप [] में" i i रेंज (वाई। शेप [0]) "में क्या करता है?

for i in range(Y.shape[0]): 
    if Y[i] == -1: 

यह प्रोग्राम numpy, scipy, matplotlib.pyplot, और cvxopt का उपयोग करता है।

+4

http://docs.scipy.org/doc/numpy/reference/generated/numpy.ma.shape.html या http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.shape.html#numpy.ndarray.shape –

उत्तर

61

shape numpy arrays के लिए विशेषता सरणी के आयाम लौटाती है। यदि Y में n पंक्तियां और m कॉलम हैं, तो Y.shape(n,m) है। तो Y.shape[0]n है।

In [46]: Y = np.arange(12).reshape(3,4) 

In [47]: Y 
Out[47]: 
array([[ 0, 1, 2, 3], 
     [ 4, 5, 6, 7], 
     [ 8, 9, 10, 11]]) 

In [48]: Y.shape 
Out[48]: (3, 4) 

In [49]: Y.shape[0] 
Out[49]: 3 
6

shape एक टपल है कि आप सरणी में आयाम की संख्या का एक संकेत देता है। तो आपके मामले में, चूंकि का सूचकांक मान 0 है, तो आप अपने सरणी के पहले आयाम के साथ काम कर रहे हैं।

से http://www.scipy.org/Tentative_NumPy_Tutorial#head-62ef2d3c0a5b4b7d6fdc48e4a60fe48b1ffe5006

An array has a shape given by the number of elements along each axis: 
>>> a = floor(10*random.random((3,4))) 

>>> a 
array([[ 7., 5., 9., 3.], 
     [ 7., 2., 7., 8.], 
     [ 6., 8., 3., 2.]]) 

>>> a.shape 
(3, 4) 

और http://www.scipy.org/Numpy_Example_List#shape कुछ और उदाहरण है।

+0

बहुत बढ़िया धन्यवाद लेवॉन! – HipsterCarlGoldstein

+1

@ हिप्स्टर कार्लगोल्डस्टीन सिर्फ एक दोस्ताना नोट, यदि इन उत्तरों में से किसी एक ने आपकी समस्या हल की है तो कृपया ध्यान दें [ उत्तर के बगल में स्थित चेकमार्क पर क्लिक करके इसे स्वीकार करें] (http://meta.stackexchange.com/questions/5234/how -Does स्वीकार-एक-जवाब-काम/5235 # 5235)। यह आपको कुछ उत्तर बिंदुओं के उत्तर देने वाला और उत्तर देने वाला होगा और यह समस्या हल करने के लिए भी चिह्नित करेगा - धन्यवाद। – Levon

22

आकार एक टपल कि सरणी के आयाम देता है ..

>>> c = arange(20).reshape(5,4) 
>>> c 
array([[ 0, 1, 2, 3], 
     [ 4, 5, 6, 7], 
     [ 8, 9, 10, 11], 
     [12, 13, 14, 15], 
     [16, 17, 18, 19]]) 

c.shape[0] 
5 

पंक्तियों की संख्या

c.shape[1] 
4 

कॉलम

0

की संख्या देता है अजगर shape() में देता है पांडा में इस्तेमाल होता है पंक्ति/कॉलम की संख्या देने के लिए:

पंक्ति की संख्या रों द्वारा दिया जाता है:

train = pd.read_csv('fine_name') //load the data 
train.shape[0] 

स्तंभों की संख्या

द्वारा दिया जाता है
train.shape[1] 
संबंधित मुद्दे