Numpy काम करता है, जैसे np.mean(), np.var(), आदि, एक सरणी की तरह तर्क स्वीकार करते हैं, np.array, या सूची, आदिअंधा कार्य आंतरिक रूप से पांडा वस्तुओं पर कैसे काम करते हैं?
लेकिन एक पांडा dataframe भी काम करता है में से गुजर रहा है। इसका मतलब है कि एक पांडा डेटाफ्रेम वास्तव में खुद को एक सुस्त सरणी के रूप में छिपा सकता है, जिसे मुझे थोड़ा अजीब लगता है (इस तथ्य को जानने के बावजूद कि एक डीएफ के अंतर्निहित मूल्य वास्तव में numpy arrays हैं)।
किसी ऑब्जेक्ट के लिए एक सरणी जैसा होना, मैंने सोचा कि यह एक numpy सरणी कटा हुआ तरीके से पूर्णांक अनुक्रमण का उपयोग कर slicable होना चाहिए। तो उदाहरण के लिए डीएफ [1: 3, 2: 3] काम करना चाहिए, लेकिन इससे एक त्रुटि होगी।
तो, संभावित रूप से डेटाफ्रेम को फ़ंक्शन के अंदर जाने पर एक numpy सरणी में परिवर्तित कर देता है। लेकिन अगर ऐसा है तो np.mean (numpy_array) np.mean (df) की तुलना में एक अलग परिणाम क्यों लेता है?
a = np.random.rand(4,2)
a
Out[13]:
array([[ 0.86688862, 0.09682919],
[ 0.49629578, 0.78263523],
[ 0.83552411, 0.71907931],
[ 0.95039642, 0.71795655]])
np.mean(a)
Out[14]: 0.68320065182041034
क्या नीचे देता तुलना में एक अलग परिणाम देता है,
df = pd.DataFrame(data=a, index=range(np.shape(a)[0]),
columns=range(np.shape(a)[1]))
df
Out[18]:
0 1
0 0.866889 0.096829
1 0.496296 0.782635
2 0.835524 0.719079
3 0.950396 0.717957
np.mean(df)
Out[21]:
0 0.787276
1 0.579125
dtype: float64
पूर्व उत्पादन एक संख्या है ... उत्तरार्द्ध जबकि एक स्तंभ-वार मतलब है। डेटाफ्रेम के निर्माण के बारे में एक numpy फ़ंक्शन कैसे पता चलता है?
अंतर्निहित सरणी डेटा का उपयोग करने के लिए, हम करने की जरूरत है '.values' का उपयोग करें। इसके बिना, यह बिल्कुल सरणी डेटा नहीं है। परिणाम NumPy funcs के साथ संगत होना चाहिए। – Divakar