Wednesday 12 July 2017

การย้าย ค่าเฉลี่ย ใน ภาษา c


เป็นไปได้ที่จะใช้ค่าเฉลี่ยเคลื่อนที่ใน C โดยไม่จำเป็นต้องมีหน้าต่างของ sample. I พบว่าฉันสามารถเพิ่มประสิทธิภาพบิตโดยการเลือกขนาดหน้าต่างที่ sa อำนาจของสองเพื่อให้สามารถขยับบิตแทนการหาร แต่ มีวิธีการแสดงผลเฉลี่ยเคลื่อนที่ใหม่เท่านั้นเป็นหน้าที่ของผลเก่าและตัวอย่างใหม่กำหนดตัวอย่างเฉลี่ยเคลื่อนที่ข้ามหน้าต่างของ 4 ตัวอย่างที่จะเพิ่มตัวอย่างใหม่ eA ค่าเฉลี่ยเคลื่อนที่สามารถนำมาใช้ซ้ำ แต่สำหรับการคำนวณที่แน่นอนของค่าเฉลี่ยเคลื่อนที่ที่คุณต้องจำตัวอย่างการป้อนข้อมูลที่เก่าแก่ที่สุดในการรวมเช่นในตัวอย่างของคุณสำหรับความยาวเฉลี่ย N คำนวณโดยเฉลี่ยที่คุณ compute. where yn เป็นสัญญาณขาออกและ xn เป็นสัญญาณเข้า Eq 1 สามารถเขียน recursively as ดังนั้นคุณจำเป็นต้องจำตัวอย่าง x nN เพื่อคำนวณ 2.As ชี้โดย Conrad Turner คุณสามารถใช้หน้าต่างชี้แจงอนันต์ยาวแทนซึ่งช่วยให้คุณสามารถคำนวณ ผลลัพธ์จากอดีตเท่านั้น ใส่และ input. but ปัจจุบันนี้ไม่ได้เป็นค่าเฉลี่ยเคลื่อนที่ unweighted มาตรฐาน แต่ค่าเฉลี่ยถ่วงน้ำหนักที่ชี้แจงซึ่งตัวอย่างต่อไปในอดีตได้รับน้ำหนักที่มีขนาดเล็ก แต่อย่างน้อยในทฤษฎีที่คุณไม่เคยลืมอะไรน้ำหนักเพียงได้รับมีขนาดเล็กและขนาดเล็กสำหรับ ตัวอย่างที่ไกลในอดีตฉันใช้ค่าเฉลี่ยเคลื่อนที่โดยไม่มีหน่วยความจำรายการแต่ละรายการสำหรับโปรแกรมติดตาม GPS ฉันเขียนฉันเริ่มต้นด้วย 1 ตัวอย่างและหารด้วย 1 เพื่อให้ได้ avg. I ปัจจุบันจากนั้นเพิ่มตัวอย่าง anothe และหารด้วย 2 ไปที่ ปัจจุบัน avg. This ต่อไปจนกว่าฉันจะได้รับความยาวของ average. Each เวลาหลังจากนั้นฉันเพิ่มในตัวอย่างใหม่ได้รับค่าเฉลี่ยและลบค่าเฉลี่ยที่จาก total. I ไม่นักคณิตศาสตร์ แต่ดูเหมือนจะเป็นวิธีที่ดีที่จะ ทำมันฉันคิดว่ามันจะเปิดท้องของคนรักคณิตศาสตร์จริง แต่ก็จะเปิดออกเป็นหนึ่งในวิธีที่ยอมรับการทำมันและทำงานได้ดีเพียงจำไว้ว่าสูงกว่าความยาวของคุณช้าลงตามสิ่งที่คุณต้องการปฏิบัติตาม ที่อาจไม่สำคัญที่สุด เวลา แต่เมื่อติดตามดาวเทียมถ้าคุณช้าเส้นทางอาจอยู่ไกลจากตำแหน่งจริงและจะดูไม่ดีคุณอาจมีช่องว่างระหว่างนั่งและจุดต่อท้ายฉันเลือกความยาว 15 ปรับปรุง 6 ครั้งต่อนาที ได้รับการราบเรียบที่เพียงพอและไม่ได้รับไกลจากตำแหน่งนั่งจริงกับเส้นทางราบรื่น dots. answered 16 16 ที่ 23 03.initialize รวม 0, 0 นับแต่ละครั้งเห็นค่าใหม่แล้ว scanf หนึ่งใส่หนึ่งเพิ่ม newValue ใหม่, การนับที่เพิ่มขึ้นหนึ่งรายการหารหนึ่งค่าเฉลี่ยหารด้วยซึ่งจะเป็นค่าเฉลี่ยที่เคลื่อนที่เหนือปัจจัยการผลิตทั้งหมดการคำนวณค่าเฉลี่ยโดยใช้เพียง 4 ปัจจัยสุดท้ายต้องใช้อินพุต 4 ตัวแปรอาจคัดลอกข้อมูลแต่ละอินพุทไปยังอินพุตที่เก่ากว่าแล้วคำนวณการเคลื่อนย้ายใหม่ ค่าเฉลี่ยเป็นผลรวมของ inputvariables 4 หารด้วย 4 shift ขวา 2 จะดีถ้า inputs ทั้งหมดเป็นบวกเพื่อคำนวณเฉลี่ย. ตอบ 3 กุมภาพันธ์ 15 ที่ 4 06.That จริงจะคำนวณค่าเฉลี่ยรวมและไม่เฉลี่ยเคลื่อนที่เป็น นับได้ ผลกระทบของตัวอย่างข้อมูลใหม่ ๆ จะลดลงเล็กน้อย Hilmar 3 ก. พ. 15 ที่ 13 53. คำตอบของคุณ 2017 Stack Exchange, Inc. ฉันรู้ว่านี่เป็นไปได้ที่จะเพิ่มขึ้นตาม แต่ฉันอยากจะหลีกเลี่ยงการใช้เพิ่มที่ฉันมี googled และไม่พบตัวอย่างใด ๆ ที่เหมาะสมหรืออ่านได้โดยปกติฉันต้องการติดตามค่าเฉลี่ยเคลื่อนที่ของกระแสอย่างต่อเนื่องของกระแสข้อมูลของตัวเลขทศนิยมโดยใช้ตัวเลขล่าสุด 1000 เป็นตัวอย่างข้อมูลวิธีที่ง่ายที่สุดในการบรรลุ this. I ทดลองใช้อาร์เรย์แบบวงกลมค่าเฉลี่ยเคลื่อนที่แบบเสวนาและค่าเฉลี่ยเคลื่อนที่ที่เรียบง่ายขึ้นและพบว่าผลลัพธ์จากอาร์เรย์แบบวงกลมเหมาะสมกับความต้องการของฉัน best. asked 12 มิ.ย. 12 เวลา 4 38. ถ้าความต้องการของคุณง่ายคุณอาจลองใช้ exponential moving average เพียงแค่คุณสร้างตัวแปร accumulator และเมื่อโค้ดของคุณดูที่ตัวอย่างแต่ละโค้ดจะอัพเดต accumulator ด้วยค่าใหม่คุณสามารถเลือกค่า alpha คงที่ระหว่าง 0 ถึง 1 และคำนวณได้โดยคุณต้อง เพื่อหาค่าของ a lpha ซึ่งผลกระทบของตัวอย่างที่กำหนดจะใช้เวลาประมาณ 1000 ตัวอย่างเท่านั้นฉันไม่แน่ใจว่านี่เหมาะสำหรับคุณตอนนี้ที่ฉันได้วางไว้ที่นี่แล้วปัญหาคือ 1000 เป็นหน้าต่างที่ยาวสวยสำหรับค่าเฉลี่ยเคลื่อนที่แบบเสวนา ฉันไม่แน่ใจว่ามีอัลฟาที่จะกระจายเฉลี่ยมากกว่า 1000 หมายเลขโดยไม่ underflow ในการคำนวณจุดลอย แต่ถ้าคุณต้องการค่าเฉลี่ยเล็กกว่าเช่น 30 ตัวเลขหรือดังนั้นนี้เป็นวิธีที่ง่ายและรวดเร็วในการทำ it. answered Jun 12 12 at 4 44 1 โพสต์ของคุณค่าเฉลี่ยเคลื่อนที่ที่ชี้แจงสามารถกำหนดให้ alpha เป็นตัวแปรดังนั้นวิธีนี้จะช่วยให้สามารถใช้คำนวณค่าเฉลี่ยของฐานเวลาได้เช่น bytes per second ถ้าเวลาตั้งแต่การอัพเดตเครื่องสะสมครั้งล่าสุดมีมากขึ้น มากกว่า 1 วินาทีคุณยอมให้ alpha เป็น 1 0 มิฉะนั้นคุณสามารถปล่อยให้ alpha เป็น usecs ตั้งแต่การอัปเดตล่าสุด 1000000 jxh Jun 12 12 at 6 21 โดยปกติฉันต้องการติดตามค่าเฉลี่ยเคลื่อนที่ของสตรีมตัวเลขจุดลอยที่ต่อเนื่อง ตัวเลขล่าสุด 1000 เป็นตัวอย่างข้อมูลไม่ใช่ e ที่ด้านล่างปรับปรุงทั้งหมดเป็นองค์ประกอบที่เพิ่มแทนหลีกเลี่ยงค่าใช้จ่าย ON traversal ในการคำนวณผลรวม - จำเป็นสำหรับค่าเฉลี่ยเมื่อ demand. Total ทำพารามิเตอร์ที่แตกต่างจาก T สนับสนุนเช่นใช้ยาวนานเมื่อรวม 1000 ยาว s , int สำหรับ char s หรือ double เป็น float ทั้งหมดนี่เป็นบิตที่มีข้อบกพร่องในการที่ numsamples อาจผ่าน INTMAX - ถ้าคุณสนใจคุณสามารถใช้ unsigned long long หรือใช้สมาชิก bool ข้อมูลพิเศษเพื่อบันทึกเมื่อคอนเทนเนอร์ เป็นครั้งแรกในขณะที่เต็มไปด้วยการขี่จักรยาน numsamples รอบแถวที่ดีที่สุดแล้วเปลี่ยนชื่อเป็นสิ่งที่น่ากลัวเช่น pos. answered 12 มิถุนายน 12 ที่ 5 19.one สันนิษฐานว่าโมฆะดำเนินการตัวอย่าง T เป็นจริงโมฆะดำเนินการตัวอย่าง T oPless มิถุนายน 8 14 ที่ 11 52. oPless ahhh เห็นดี จริงฉันหมายความว่ามันจะเป็นโมฆะดำเนินการ T ตัวอย่าง แต่แน่นอนคุณสามารถใช้สิ่งที่คุณต้องการจะแก้ไขจะขอบคุณโทนี่ D มิถุนายน 8 14 ที่ 14 27. ฉันมีข้อมูลจำนวน 4000 หุ้นและ tring คำนวณค่าเฉลี่ยเคลื่อนที่ สำหรับค่าข้อมูลทั้งหมด แต่นับตั้งแต่ ค่าเฉลี่ยเคลื่อนที่จะขึ้นอยู่กับข้อมูลก่อนหน้าและฉันไม่สามารถคำนวณ SMA 15 วันเป็นเวลา 14 วันแรกข้าม 14 วันแรกและคำนวณ SMA ในส่วนที่เหลือของข้อมูลและจะต้องใช้ LINQ เพื่อให้บรรลุทุกคนสามารถให้ได้ ตัวอย่างหรือคำใบ้วิธีการใช้ LINQ ในการคำนวณค่าเฉลี่ยเคลื่อนที่ค่า output สำหรับค่าเฉลี่ยอยู่ที่ประมาณ 500 si จริงๆอย่าเข้าใจว่าเป็นไปได้อย่างไรที่จะได้ค่าที่สูงค่าเฉลี่ย a. MRV ด้วยค่าบวก array.06 07 2012 562 49 571 72.06 08 2012 565 565 576 17.06 12 2012 569 55 576 16.06 13 2012 570 56 572 16.06 14 2012 570 63 571 53.06 15 2012 571 21 574 13.06 18 2012 572 78 585 78.06 19 2012 573 79 587 41.06 20 2012 574 23 585 74.06 21 2012 574 22 577 67.06 22 2012 575 63 582 10.06 25 2012 576 06 570 77.06 26 2012 576 68 572 03.06 27 2012 576 88 574 50.06 28 2012 576 7 569 05.06 29 2012 576 95 584 00.07 02 2012 578 37 592 52.07 03 2012 579 92 599 41.07 03 2012 581 74 599 41. แก้ไขโดย Leemx วันศุกร์ที่ 16 พฤศจิกายน 2555 2 59 A M. Moved by Lisa Zhu เจ้าหน้าที่ Microsoft ประจำวันจันทร์พฤศจิกายน 19, 2012 7 38 น. linq related จาก Visual C General. Friday, 16 พฤศจิกายน 2012 2 42 AM. To สร้างค่าเฉลี่ยเคลื่อนที่ฉันจะเริ่มต้นด้วยการสร้างช่วงจาก 0 ความยาวของรายการข้อมูล - ความยาวของช่วงเวลาที่เคลื่อนที่จากนั้นสำหรับแต่ละค่าในช่วงเลือกองค์ประกอบ x ถึง x ยาวของระยะเวลาการเคลื่อนย้ายและคำนวณ average. All ในคำสั่ง LINQ ที่ดีโปรดทราบว่านี่ไม่ได้มีประสิทธิภาพมากเนื่องจากคุณเป็นหลัก ย้ำผ่านรายการข้อมูลสำหรับทุกค่าในช่วงที่พวกเขาดูระบบนี้ช่วยให้ลายเซ็นของมากกว่า 60 cha. Edited โดย Arno Brouwer ศุกร์ 23 พฤศจิกายน, 2012 4 42 PM. Marked เป็นคำตอบโดย Alexander Sun วันศุกร์, ธันวาคม 07, 2012 2 44 AM. Friday, 23 พฤศจิกายน 2012 4 41 PM. All replies. A ตัวอย่างของคำสั่ง LINQ ของคุณจะช่วยเพิ่มประสิทธิภาพการเพาะเลี้ยงเป็นรากของความชั่วร้ายทั้งหมด - Knuth. To สร้างค่าเฉลี่ยเคลื่อนที่ฉันจะเริ่มต้นด้วยการสร้าง ช่วงจาก 0 ถึงความยาวของรายการข้อมูล - ระยะเวลาการเคลื่อนย้ายแล้วสำหรับแต่ละค่าใน th ช่วง e เลือกองค์ประกอบ x ถึง x ยาวของระยะเวลาการเคลื่อนที่และคำนวณ average. All ในงบ LINQ หนึ่งดีหมายเหตุว่านี่ไม่ได้มีประสิทธิภาพมากเนื่องจากคุณโดยทั่วไปย้ำกว่ารายการข้อมูลสำหรับทุกค่าในช่วงที่พวกเขามองนี้ ระบบอนุญาตลายเซ็นของมากกว่า 60 cha. Edited by Arno Brouwer ศุกร์, พฤศจิกายน 23, 2012 4 42 PM. Marked เป็นคำตอบโดย Alexander Sun ศุกร์, ธันวาคม 7, 2012 2 44 AM. Friday, พฤศจิกายน 23, 2012 4 41 PM. Microsoft กำลังทำแบบสำรวจออนไลน์เพื่อทำความเข้าใจกับความคิดเห็นของคุณเกี่ยวกับเว็บไซต์ MSDN ถ้าคุณเลือกที่จะเข้าร่วมการสำรวจออนไลน์จะถูกนำเสนอแก่คุณเมื่อคุณออกจากเว็บไซต์ Msdn คุณต้องการเข้าร่วมช่วยเราปรับปรุง MSDN เยี่ยมชม UserVoice ของเราหรือไม่ หน้าเพื่อส่งและลงมติเกี่ยวกับความคิดศูนย์ข้อมูลศูนย์การเรียนรู้

No comments:

Post a Comment