मेरे पास डेटाफ्रेम में लोड किया गया डेटा है जिसमें कॉलम हेडर के लिए एक बहु अनुक्रमणिका है। वर्तमान में मैं इस तरह समूहों में से मतलब लेने के लिए और 95% विश्वास अंतराल की गणना करने के कॉलम सूचकांक के आधार पर डेटा समूहीकरण किया गया है:पांडा समूह समूह समूहों में NaN को अनदेखा करने में मानक त्रुटि
from pandas import *
import pandas as pd
from scipy import stats as st
#Normalize to starting point then convert
normalized = (data - data.ix[0]) * 11.11111
#Group normalized data based on slope and orientation
grouped = normalized.groupby(level=['SLOPE','DEPTH'], axis=1)
#Obtain mean of each group
means = grouped.mean()
#Calculate 95% confidence interval for each group
ci = grouped.aggregate(lambda x: st.sem(x) * 1.96)
लेकिन इस के साथ समस्या यह है कि इसका मतलब है कि समारोह पर इस्तेमाल किया जाता है समूह NaN मानों को अनदेखा करते हैं जबकि समूह में NaN होने पर scipy function st.sem NaN देता है। नाइन को अनदेखा करते समय मुझे मानक त्रुटि की गणना करने की आवश्यकता है क्योंकि औसत कार्य करता है।
मैं इस तरह 95% विश्वास अंतराल की गणना के बारे में जा रहा कोशिश की है:
numpy में#Calculate 95% confidence interval for each group
ci = grouped.aggregate(lambda x: np.std(x)/??? * 1.96)
एसटीडी NaN मूल्यों की अनदेखी मुझे मानक विचलन दे देंगे, लेकिन मैं के वर्गमूल से इस विभाजित करने की आवश्यकता मानक त्रुटि प्राप्त करने के लिए NaNs को अनदेखा करने वाला समूह आकार।
NaNs को अनदेखा करते समय मानक त्रुटि की गणना करने का सबसे आसान तरीका क्या है?
import pandas as pd
s = pd.Series([1,2,np.nan, 3])
print s.count()
उत्पादन:
3
तो, कोशिश:
Series
वस्तु की
कोशिश अपने 'GroupBy में शामिल करने के लिए () 'इसे कार्य करें: 'normalized.groupby (द्वारा = [col_name_with_NaN], स्तर = [' स्लोपे ',' डेपथ '], अक्ष = 1)', ताकि ' NaN' मानों को 'समूहित' –
में प्रकट नहीं होना चाहिए 36 कॉलम हैं और किसी भी पंक्ति यानी NaNs हो सकते हैं। खोए आँकड़े। क्या आप सभी कॉलम नामों की सूची उत्तीर्ण करने का सुझाव दे रहे हैं? द्वारा = [] तर्क क्या करता है? मैं चारों ओर देख रहा हूं लेकिन इसे समझने के लिए प्रतीत नहीं होता है। – pbreach
हां, सभी '36' कॉलम नामों को 'by' तर्क से गुजरने का प्रयास करें। मैं वास्तव में यह तर्क नहीं करता हूं, लेकिन यह NaNs को फ़िल्टर करता है ... –