मैं एक संभावना घनत्व समारोह के लिए स्थानीय मैक्सिमा खोजने की कोशिश कर रहा हूं (आर के density
तरीके का उपयोग करके पाया गया )। मैं एक सरल "पड़ोसियों के आसपास देखो" विधि नहीं कर सकता (जहां कोई यह देखने के लिए एक बिंदु के आसपास दिखता है कि क्या यह अपने पड़ोसियों के संबंध में एक स्थानीय अधिकतम है) क्योंकि डेटा की एक बड़ी मात्रा है। इसके अलावा, यह स्पलाइन इंटरपोलेशन जैसी किसी चीज़ का उपयोग करने के लिए अधिक कुशल और सामान्य लगता है और फिर 1 व्युत्पन्न की जड़ों को ढूंढता है, जैसा कि दोष सहिष्णुता और अन्य मापदंडों के साथ "पड़ोसियों के आसपास देखो" के निर्माण के विपरीत है।
तो, मेरे सवाल:
- से एक समारोह को देखते हुए
splinefun
, स्थानीय मैक्सीमा को कौन सी विधियाँ मिलेंगी? - वहाँ एक आसान / मानक तरीका एक समारोह का उपयोग कर वापस पाने के लिए है
splinefun
? - क्या संभावना घनत्व फ़ंक्शन के स्थानीय मैक्सिमा को खोजने का एक बेहतर / मानक तरीका है?
संदर्भ के लिए, नीचे मेरे घनत्व फ़ंक्शन का एक प्लॉट है। अन्य घनत्व कार्य जिनके साथ मैं काम कर रहा हूं वे फॉर्म में समान हैं। मुझे कहना चाहिए कि मैं आर के लिए नया हूं, लेकिन प्रोग्रामिंग के लिए नया नहीं हूं, इसलिए मुझे जो भी चाहिए उसे प्राप्त करने के लिए एक मानक पुस्तकालय या पैकेज हो सकता है।
आपकी सहायता के लिए धन्यवाद!!
msExtrema {msProcess}
) के समान कुछ का उपयोग करके अधिकतम / मिनट खोजक लिखने की कोशिश की और केवल सहिष्णुता सेटिंग्स के साथ खेलकर, अधिकतम कुछ की पहचान करने में सक्षम था।
msExtrema
, यह पैकेज peaks
से एक सरल आवरण है splus2R
, जिसे आप सीधे उपयोग करना बेहतर होगा यदि आप केवल स्थानीय मैक्सिमा चाहते हैं न कि स्थानीय मिनीमा। मैं यह नहीं देख सकता कि डिफ़ॉल्ट का उपयोग span=3
करने से सभी स्थानीय मैक्सीमा नहीं मिलेंगे। और 2 ^ 15 = 32768 दक्षता के लिए एक बड़ी चिंता का विषय नहीं होना चाहिए।
peaks
छोटी गाड़ी प्रतीत होती है: यह max.col
डिफ़ॉल्ट सेटिंग के साथ कॉल करता है ties.method = "random"
, जो न केवल यादृच्छिक पर संबंधों को तोड़ता है, बल्कि टाई घोषित करने के लिए 1e-5 की सापेक्ष सहिष्णुता भी निर्धारित करता है। पूर्व भ्रामक है, बाद वाला निश्चित रूप से वह नहीं है जो आप यहां चाहते हैं। peaks()
एक strict
पैरामीटर भी लेता है जो खराब दस्तावेज है और फ़ंक्शन के कोड को देखकर कुछ भी नहीं करता है। आह, उपयोगकर्ता योगदान सॉफ्टवेयर पुस्तकालयों की खुशियाँ! आप अच्छी तरह से इसे ठीक करने में सक्षम हो सकते हैं, जैसा कि आप कहते हैं कि आप प्रोग्रामिंग के लिए नए नहीं हैं,
density()
हर डेटम के घनत्व का अनुमान नहीं लगाता है, यह एन मानों पर घनत्व का अनुमान लगाता है , जहां n डिफ़ॉल्ट मान n = 512 के साथ एक उपयोगकर्ता-निर्दिष्ट पैरामीटर है