मैं अजगर के लिए नया हूँ। यह पूछने के लिए एक बुनियादी सवाल की तरह लगता है। इस -क्यों happenening है: लेकिन मैं वास्तव में समझने के लिए यहाँपांडस में अनुक्रमण कैसे काम करता है?
import numpy as np
import pandas as pd
tempdata = np.random.random(5)
myseries_one = pd.Series(tempdata)
myseries_two = pd.Series(data = tempdata, index = ['a','b','c','d','e'])
myseries_three = pd.Series(data = tempdata, index = [10,11,12,13,14])
myseries_one
Out[1]:
0 0.291293
1 0.381014
2 0.923360
3 0.271671
4 0.605989
dtype: float64
myseries_two
Out[2]:
a 0.291293
b 0.381014
c 0.923360
d 0.271671
e 0.605989
dtype: float64
myseries_three
Out[3]:
10 0.291293
11 0.381014
12 0.923360
13 0.271671
14 0.605989
dtype: float64
क्या हो रहा है प्रत्येक dataframe
myseries_one[0] #As expected
Out[74]: 0.29129291112626043
myseries_two[0] #As expected
Out[75]: 0.29129291112626043
myseries_three[0]
KeyError:0
Doubt1 से पहले तत्व अनुक्रमण करना चाहते हैं? Myseries_three [0] मुझे एक keyError क्यों देता है? myseries_one [0], myseries_one [0] या myseries_three [0] को कॉल करके हमारा क्या मतलब था? क्या इस तरह से फोन करना मतलब है कि हम rownames द्वारा बुला रहे हैं?
संदेह 2: -यह पाइथन में राउनम्स और राउनंबर आर में राउनम्स और राउनंबर के रूप में अलग-अलग काम करता है?
myseries_one[0:2]
Out[78]:
0 0.291293
1 0.381014
dtype: float64
myseries_two[0:2]
Out[79]:
a 0.291293
b 0.381014
dtype: float64
myseries_three[0:2]
Out[80]:
10 0.291293
11 0.381014
dtype: float64
Doubt3: - myseries_three [0] rownames तो कैसे myseries_three से बुला मतलब बुला तो [0: 3] उत्पादन उत्पादन? myseries_three [0: 4] का मतलब है कि हम rownumber द्वारा बुला रहे हैं? कृपया समझाएं और मार्गदर्शन करें। मैं आर से पायथन तक माइग्रेट कर रहा हूं। तो यह मेरे लिए थोड़ा उलझन में है।
पहले संदेह के लिए, आप 'कुंजी error' हो रही है, मुझे लगता है, क्योंकि, सूचकांक' 0' मौजूद नहीं है क्योंकि आप स्पष्ट रूप से सूचकांक की पहचान कर रहे हैं। इसे ठीक करने के लिए आप निम्न का उपयोग कर सकते हैं: 'myseries_three.iloc [0] '। – Dataman
यह एक जिज्ञासा की तरह दिखता है कि पांडा आपको 'myseries_two' उदाहरण में मदद कर रहा है, सीरीज़ के लिए इंडेक्सिंग लेबल आधारित है, इसलिए इसे दूसरे उदाहरण के लिए' KeyError' उठाया जाना चाहिए था, लेकिन इसने स्थिति के आधार पर स्थिति आधारित अनुक्रमण का उपयोग करने का निर्णय लिया आपके लिए, आपकी समझ गलत नहीं है, दस्तावेज़ देखें: http://pandas.pydata.org/pandas-docs/stable/indexing.html#basics – EdChum
@Dataman टिप्पणी में जोड़ना। _three में, "0" के साथ "14" को प्रतिस्थापित करें, और परिणाम देखें। यदि कुंजी 'टेक्स्ट' हैं तो संख्या अनुक्रमण 'अभी भी' काम करता है। यदि चाबियाँ संख्याएं हैं, तो पांडा के लिए कुंजी की खोज की जाती है। प्रयासों को डालने के लिए – Merlin