मेरे पास कुछ कोड है जो एक रोलिंग विंडो - "रोलिंग माध्य" में एक माध्य को ट्रैक करने के लिए बूस्ट संचयक का उपयोग करता है। रोलिंग मतलब के अलावा, मैं इस रोलिंग विंडो में न्यूनतम और अधिकतम ट्रैक करना चाहता हूं।सी ++ बूस्ट के लिए रोलिंग न्यूनतम और रोलिंग अधिकतम?
क्या बूस्ट संचयक के साथ रोलिंग मिनट और रोलिंग अधिकतम गणना करने का कोई तरीका है? मुझे कोई रास्ता नहीं दिख रहा है ...
मैंने rolling_mean के लिए उपयोग किए गए संचयक में न्यूनतम और अधिकतम टैग जोड़ने का प्रयास किया है, लेकिन यह मुझे वह नहीं देता जो मुझे चाहिए।
typedef accumulator_set<uint32_t, stats<tag::rolling_mean> > rollingMeanAcc_t;
typedef accumulator_set<uint32_t, stats<tag::rolling_mean,tag::min,tag::max> > rollingMeanAcc_t;
हालांकि, मिनट हो जाता है और अधिकतम यहाँ प्रदान पूरे संचायक से अधिक गणना कर रहे हैं, बजाय मतलब के रूप में ही रोलिंग खिड़की तक ही सीमित।
बूस्ट documentation का कहना है कि न्यूनतम और अधिकतम भर में गणना सभी नमूने, एक रोलिंग खिड़की तक ही सीमित नहीं। वे नमूनों को सीमित या वजन देने का तरीका प्रदान नहीं करते हैं।
मैं रोलिंग विंडो में सभी/न्यूनतम/अधिकतम रिपोर्ट करने में सक्षम होना चाहता हूं।
मैं वर्तमान में बूस्ट संस्करण 1.48.0 का उपयोग कर रहा हूं। मैंने नवीनतम संस्करण (1.54.0) के लिए प्रलेखन को देखा है और वहां लागू रोलिंग न्यूनतम/अधिकतम दिखाई नहीं देता है।
मुझे sliding window minimum को ट्रैक करने के लिए एक गैर-बूस्ट तरीका मिला है, लेकिन यह ऐसा नहीं लगता है जो मैं चाहता हूं। मैं मूल्यों को सिर्फ इसलिए नहीं हटाना चाहता क्योंकि वे पिछले न्यूनतम/अधिकतम से अधिक/कम हैं, क्योंकि रोलिंग_मेअन गलत होगा।
धन्यवाद। यह समझ में आता है। क्या इस के आसपास एक रास्ता हो सकता है?क्या मैं किसी भी तरह से "रीसेट" या संचयक में संग्रहीत वर्तमान अधिकतम और मिनट को ओवरराइट कर सकता हूं? –