Monday 12 March 2018

متوسط متوسط الشفرة في c


وأنا أعلم أن هذا يمكن تحقيقه مع دفعة كما في: ولكن أنا حقا ترغب في تجنب استخدام دفعة. لقد غوغلد ولم يتم العثور على أي أمثلة مناسبة أو مقروءة. أساسا أريد أن تتبع المتوسط ​​المتحرك لتيار مستمر من تيار من أرقام النقطة العائمة باستخدام أحدث 1000 أرقام كعينة البيانات. ما هي أسهل طريقة لتحقيق ذلك أنا جربت باستخدام صفيف دائري، المتوسط ​​المتحرك الأسي ومتوسط ​​متحرك أكثر بساطة وجدت أن النتائج من مجموعة دائرية تناسب احتياجاتي أفضل. سأل 12 يونيو 12 في 4:38 إذا احتياجاتك بسيطة، قد حاولت مجرد استخدام المتوسط ​​المتحرك الأسي. ببساطة، يمكنك إجراء متغير تراكم، وكما التعليمات البرمجية الخاصة بك ينظر في كل عينة، التعليمات البرمجية بتحديث تراكم مع القيمة الجديدة. يمكنك اختيار ألفا ثابت ما بين 0 و 1، وحساب هذا: تحتاج فقط إلى العثور على قيمة ألفا حيث تأثير عينة معينة يستمر فقط لحوالي 1000 عينة. هم، إم لا فعلا متأكد من أن هذا هو مناسب لك، والآن أن إيف وضعه هنا. المشكلة هي أن 1000 هو نافذة طويلة جدا لمتوسط ​​متحرك أسي إم غير متأكد من وجود ألفا التي من شأنها أن تنتشر المتوسط ​​على آخر 1000 أرقام، دون تدفق في حساب العائمة. ولكن إذا كنت تريد متوسط ​​أصغر، مثل 30 أرقام أو نحو ذلك، وهذا هو وسيلة سهلة جدا وسريعة للقيام بذلك. أجاب يونيو 12 12 في 4:44 1 على مشاركتك. ويمكن أن يسمح المتوسط ​​المتحرك الأسي للألفا بأن يكون متغيرا. لذلك يسمح هذا باستخدامها لحساب متوسطات قاعدة الوقت (على سبيل المثال وحدات البايت في الثانية). إذا كان الوقت منذ آخر تحديث تراكم هو أكثر من 1 ثانية، يمكنك السماح ألفا يكون 1.0. خلاف ذلك، يمكنك السماح ألفا يكون (أوسيكس منذ last1000000 الماضي). ندش ج 12 يونيو في 6:21 أساسا أريد أن تتبع المتوسط ​​المتحرك لتيار مستمر من تيار من أرقام النقطة العائمة باستخدام أحدث 1000 أرقام كعينة البيانات. لاحظ أن أدناه يقوم بتحديث المجموع كعناصر كما أددريبلاسد، وتجنب مكلفة O (N) اجتياز لحساب المجموع - اللازمة للمتوسط ​​- عند الطلب. يتم إجراء إجمالي معلمة مختلفة من T لدعم على سبيل المثال. باستخدام طويلة طويلة عندما يبلغ مجموعها 1000 ثانية s، إنت لشار s، أو ضعف إلى مجموع تعويم s. هذا هو معيب بعض الشيء في أن الأمثلة يمكن أن تذهب الماضي إنتماكس - إذا كنت تهتم يمكنك استخدام طويلة غير موقعة. أو استخدام عضو بيانات بول إضافية لتسجيل عندما يتم تعبئة الحاوية لأول مرة في حين ركوب الدراجات نامبلز حول مجموعة (أفضل ثم تسميته شيء حميدة مثل بوس). أجاب 12 يونيو 12 في 5:19 واحد يفترض أن المشغل كوتفويد (عينة T) هو في الواقع كوتيفويد أوبيراتورلتلت (عينة T) كوت. نداش أوبليس يونيو 8 14 في 11:52 أوبليس أهه. رصدت جيدا. في الواقع كنت أعني أن يكون عاملا باطلا () (عينة T) ولكن بالطبع يمكنك استخدام أي تدوين كنت أحب. سوف إصلاح، وذلك بفضل. ندش توني D يونيو 14 14 في 14: 27 هل من الممكن لتنفيذ المتوسط ​​المتحرك في C دون الحاجة إلى نافذة من العينات إيف وجدت أنني يمكن أن تحسن قليلا، عن طريق اختيار حجم نافذة هذا هو قوة اثنين للسماح بت - shifting بدلا من تقسيم، ولكن لا تحتاج إلى المخزن المؤقت سيكون لطيفا. هل هناك طريقة للتعبير عن نتيجة متوسط ​​متحرك جديد فقط كدالة للنتيجة القديمة والعينة الجديدة حدد مثالا متحركا على سبيل المثال، عبر نافذة مكونة من 4 عينات لتكون: إضافة عينة جديدة ه: يمكن تنفيذ المتوسط ​​المتحرك بشكل متكرر ، ولكن لحساب دقيق للمتوسط ​​المتحرك عليك أن تتذكر أقدم عينة المدخلات في المجموع (أي في المثال الخاص بك). وبالنسبة للمتوسط ​​المتحرك N الذي تحسبه: حيث ين هي إشارة الخرج و شن هي إشارة الدخل. مكافئ. (1) يمكن أن تكون مكتوبة بشكل متكرر كما كنت دائما بحاجة إلى تذكر العينة شن-N من أجل حساب (2). وكما أشار كونراد تيرنر، يمكنك استخدام نافذة أسي طويلة (بلا حدود) بدلا من ذلك، والتي تسمح لك بحساب الإخراج فقط من المخرجات السابقة والإدخال الحالي: ولكن هذا ليس متوسط ​​متحرك (غير مرجح) قياسي ولكن بشكل أضعافا مضاعفة (حيث على الأقل من الناحية النظرية) لا تنسى أبدا أي شيء (الأوزان فقط تحصل على أصغر وأصغر للعينات بعيدة في الماضي). أنا نفذت المتوسط ​​المتحرك دون ذاكرة البند الفردية لبرنامج تتبع غس كتبته. أبدأ مع 1 عينة وتقسيم بنسبة 1 للحصول على متوسط ​​الحالي. ثم قم بإضافة عينة أنوث وتقسيمها 2 إلى المتوسط ​​الحالي. يستمر هذا حتى يصل إلى طول المتوسط. في كل مرة بعد ذلك، أضيف في العينة الجديدة، واحصل على المتوسط ​​وأزل هذا المتوسط ​​من المجموع. أنا لست رياضياتيا ولكن هذا يبدو وكأنه وسيلة جيدة للقيام بذلك. أنا أحسب أنه من شأنه أن يحول المعدة من رجل الرياضيات الحقيقي ولكن، اتضح أنها واحدة من الطرق المقبولة للقيام بذلك. ويعمل بشكل جيد. فقط تذكر أن ارتفاع طول الخاص بك أبطأ هو اتباع ما كنت تريد أن تتبع. وهذا قد لا يهم معظم الوقت ولكن عندما تتبع الأقمار الصناعية، إذا كنت بطيئا، يمكن أن يكون درب بعيدا عن الوضع الفعلي، وسوف تبدو سيئة. هل يمكن أن يكون هناك فجوة بين جلس والنقاط زائدة. اخترت بطول 15 تحديث 6 مرات في الدقيقة الواحدة للحصول على تجانس كافية ولا تحصل بعيدا جدا عن الوضع الفعلي جلس مع نقاط درب ممهدة. أجاب 16 نوفمبر 16 في 23:03 تهيئة العدد الإجمالي 0، count0 (في كل مرة رؤية قيمة جديدة ثم إدخال واحد (سكانف)، واحد إضافة توتالنوفالو، زيادة واحدة (عدد)، واحد معدل الفجوة (توتالكونت) سيكون هذا المتوسط ​​المتحرك أكثر من جميع المدخلات لحساب المتوسط ​​فوق المدخلات الأربعة الأخيرة فقط، يتطلب 4 مدخلات، ربما نسخ كل مدخلات إلى مدخلات قديمة، ثم حساب المتوسط ​​المتحرك الجديد، حيث أن مجموع المدخلات 4، مقسوما على 4 (التحول الصحيح 2 سيكون جيد إذا كانت جميع المدخلات إيجابية لجعل متوسط ​​حساب أجاب فب 3 15 في 4:06 وهذا في الواقع حساب المتوسط ​​الكلي وليس المتوسط ​​المتحرك. كما يحصل العد أكبر تأثير أي عينة إدخال جديدة تصبح صغيرة تتلاشى نداش هيلمر فبراير 3 15 في 13:53 إجابتك 2017 ستاك إكسهانج، إنسي لديها 4000 كمية البيانات من الأسهم، و ترينغ لحساب المتوسط ​​المتحرك لجميع قيم البيانات، ولكن بما أن المتوسط ​​المتحرك يعتمد على البيانات السابقة ولا أستطيع حساب 15- يوم سما لمدة 14 يوما الأولى، تخطي أول 14 يوما وحساب سما على بقية البيانات. وأنه يجب أن تستخدم لينق لإنجاز. يمكن لأي شخص إعطاء عينات أو تلميح كيفية استخدام لينق لحساب المتوسط ​​المتحرك الإخراج لمتوسط ​​القيم كلها في جميع أنحاء 500s أنا حقا لا أفهم كيف هو ممكن للحصول على تلك القيمة العالية. الانتقال averager بمبالغ مجموعة: 06072012 562.49 571.72 06082012 565.84 580.32 06112012 568.56 571.17 06122012 569.55 576.16 06132012 570.56 572.16 06142012 570.63 571.53 06152012 571.21 574.13 06182012 572.78 585.78 06192012 573.79 587.41 06202012 574.23 585.74 06212012 574.22 577.67 06222012 575.63 582.10 06252012 576.06 570.77 06262012 576.68 572.03 06272012 576.88 574.50 06282012 576.7 569.05 06292012 576.95 584.00 07022012 578.37 592.52 07032012 579.92 599.41 07032012 581.74 599.41 تحريرها من قبل ليمكس الجمعة 16 نوفمبر 2012 2:59 ص نقله موظفو وحدة ليزا تشو ميكروسوفت الاثنين 19 نوفمبر 2012 7:38 ص لينك ريلاتد (فروم : فيسوال C جينيرال) الجمعة، نوفمبر 16، 2012 2:42 آم لإنشاء متوسط ​​متحرك، سأبدأ بإنشاء نطاق من 0 إلى (طول قائمة البيانات - طول الفترة المتحركة)، ثم لكل قيمة في النطاق حدد العناصر x إلى x 43 طول الفترة المتحركة وحساب المتوسط. الكل في واحد لطيفة بيان لينق: لاحظ أن هذا ليس فعالا للغاية، لأنك تتكرر أساسا على قائمة البيانات لكل قيمة في النطاق .. مهلا، نظرة هذا النظام يسمح توقيعات أكثر من 60 تشا تحريرها أرنو بروور الجمعة، نوفمبر 23، 2012 4:42 بيإم وضعت كإجابة من قبل ألكسندر صن الجمعة، ديسمبر 07، 2012 2:44 آم الجمعة، نوفمبر 23، 2012 4:41 م جميع الردود عينة من بيان لينق الخاص بك من شأنه أن يساعد. كوريبماتور الأمثل هو جذر كل evil. quot - نوث لإنشاء متوسط ​​متحرك، وأود أن تبدأ من خلال إنشاء نطاق من 0 إلى (طول قائمة البيانات - طول الفترة المتحركة)، ثم لكل قيمة في نطاق تحديد العناصر س إلى x 43 طول الفترة المتحركة وحساب المتوسط. الكل في واحد لطيفة بيان لينق: لاحظ أن هذا ليس فعالا للغاية، لأنك تتكرر أساسا على قائمة البيانات لكل قيمة في النطاق .. مهلا، نظرة هذا النظام يسمح توقيعات أكثر من 60 تشا تحريرها أرنو بروور الجمعة، نوفمبر 23، 2012 4:42 بيإم وضعت كإجابة من قبل ألكسندر صن الجمعة، ديسمبر 07، 2012 2:44 ص الجمعة 23 نوفمبر 2012 4:41 م تقوم ميكروسوفت بإجراء استطلاع على الانترنت لفهم رأيك لموقع مسن على شبكة الإنترنت. إذا اخترت المشاركة، سيتم تقديم الاستبيان عبر الإنترنت لك عند مغادرة موقع مسن على ويب. هل ترغب في المشاركة ساعدنا في تحسين مسن. زيارة صفحة وسيرفويس لدينا لتقديم والتصويت على الأفكار مراكز ديف مصادر التعلم

No comments:

Post a Comment