एक मेज जहां पहले कॉलम एक निश्चित संदर्भ बिंदु अतीत सेकंड है और दूसरा एक एक मनमाना माप है यह देखते हुए:चौरसाई अनियमित नमूना समय डेटा
6 0.738158581
21 0.801697222
39 1.797224596
49 2.77920469
54 2.839757536
79 3.832232283
91 4.676794376
97 5.18244704
100 5.521878863
118 6.316630137
131 6.778507504
147 7.020395216
157 7.331607129
176 7.637492223
202 7.848079136
223 7.989456499
251 8.76853608
278 9.092367123
...
जैसा कि आप देख, माप अनियमित समय बिंदुओं पर नमूने दिए जाते हैं । मुझे प्रत्येक माप (पायथन में) से 100 सेकंड तक पढ़ने के औसत से डेटा को चिकनी करने की आवश्यकता है। चूंकि डेटा तालिका बहुत बड़ी है, इसलिए एक इटरेटर-आधारित विधि वास्तव में पसंद की जाती है। दुर्भाग्यवश, कोडिंग के दो घंटे बाद मैं कुशल और सुरुचिपूर्ण समाधान नहीं समझ सकता।
क्या कोई मेरी मदद कर सकता है?
संपादित रों
मैं प्रत्येक कच्चे पढ़ने के लिए एक सरल पढ़ने, और समतल पढ़ने चाहते कच्चे पढ़ने का समांतर माध्य और पिछले 100 (डेल्टा) सेकंड में किसी भी अन्य हो रहा है । (जॉन, आप सही हैं)
विशाल ~ 1E6 - 10E6 लाइनों + तंग रैम
के साथ काम करने की जरूरत है डेटा लगभग यादृच्छिक की पैदल दूरी पर
डेटा
RESOLUTION
मैंने जे माचिन और याएचु द्वारा प्रस्तावित समाधानों का परीक्षण किया है। दोनों ने एक ही परिणाम दिए, हालांकि, मेरे डेटा सेट पर, जे माचिन का संस्करण तेजी से प्रदर्शन करता है, जबकि यैचु की रैखिक है। अनुसरण कर रहे हैं निष्पादन समय के रूप में IPython के % timeit द्वारा मापा (माइक्रोसेकंड में):
data size J Machin yairchu
10 90.2 55.6
50 930 258
100 3080 514
500 64700 2660
1000 253000 5390
2000 952000 11500
मदद के लिए आप सभी को धन्यवाद।
यह बहुत बड़ा NumPy सरणी में नियंत्रित किया जा करने के लिए है? आपके पास कितने आइटम हैं? –
इस रैखिक प्रक्षेप अंक है कि 100 के गुणज हैं खोजने के लिए है? –
यदि आपके पास चिकनाई की आवश्यकता है, तो कृपया थोड़ा और विस्तृत करें। मैंने दो बार कोशिश की लेकिन मैं आपके इस वर्णन को पार्स नहीं कर सकता: "मुझे प्रत्येक माप से पहले 100 सेकंड तक पढ़ने के औसत से डेटा को सुचारू बनाना होगा"। – rix0rrr