Octave เคลื่อนไหว เฉลี่ย ฟังก์ชั่น


Weighted Moving Average ในการตอบกลับโพสต์นี้โดย Luca Delucchi. An วิธีออนไลน์ในการทำ wma คือคุณสามารถเพิ่มค่าเดียวพร้อมกันได้ด้วยหน้าต่างที่มีค่าแรงซึ่งมีน้ำหนักมากขึ้นเมื่อเร็ว ๆ นี้ที่แข็งแกร่งกว่าคนที่ไม่ค่อยมีคนทำงานล่าสุดเช่น this. xmean t 1 exp -1 tau xmean txt tau. this ให้คุณ wma ของ xt tau เป็นสิ่งที่ต้องการความยาวของหน่วยความจำเหตุการณ์ที่ไกลออกไปกว่า tau จะไม่ถูกจดจำเกินไป well. Am 10 08 2007 um 09 19 schrieb Luca Delucchi. Hi, I สามารถทำหน้าที่ใน Weighted Moving Average โดยที่ค่าจะอยู่ในโหมดอัตโนมัตินี้ความคิดของฉัน y y1, y2, y3, y4, y5 ฟังก์ชัน wma y y1 2 y2 y3 4 y2 2 y3 y4 4 etc etc end function ฉันไม่สามารถทำซ้ำได้ สูตร y1 2 y2 y3 4 เพราะถ้าความยาวของเวกเตอร์แตกต่างกันฉันต้องเปลี่ยนฟังก์ชัน แต่มีเพียงสูตรเดียวที่ใช้สูตรสำหรับค่าทั้งหมดของเวกเตอร์ฉันหวังว่าฉันได้ให้คำอธิบายที่ชัดเจน Luca Help - octave รายการอีเมลที่ซ่อนอยู่ . ไม่ใช่สิ่งที่แปดสิบ แต่สิ่งที่ประมวลผลสัญญาณ FIR ตอบฟิวด์ จำกัด ter จะถูกกำหนดโดยเวกเตอร์ของค่าสัมประสิทธิ์ดังนั้นหากตัวกรองมีความยาว 4 ผลลัพธ์จะเหมือนกับ ytb 1 xtb 2 x t-1 b 3 x t-2 b 4 x t-3 ดังนั้นเมื่อข 1 , 4 4 มันเป็นเพียงค่าเฉลี่ยของสี่ elements. In octave คุณสามารถใช้ตัวกรองฟังก์ชันที่จะทำว่าถ้า x เป็นสัญญาณของคุณคุณสามารถทำ y กรอง b, 1, xP S นี่คือเกือบ เช่นเดียวกับข้อเสนอแนะของ Sren ที่จะใช้ convolution โดยใช้ฟังก์ชัน conv ความแตกต่างที่ฉันเชื่อว่าตัวกรองจะให้ผลลัพธ์เช่นเดียวกับ conv แต่ตัดทอนความยาวของ x ใน 8 10 07 Luca Delucchi อีเมลที่ซ่อนไว้เขียนไว้ 2007 8 10 , Schirmacher, Rolf อีเมล์ที่ซ่อนอยู่ตัวกรองที่มีตัวกรอง FIR ค่าสัมประสิทธิ์จะเป็น b 1 1 1 1 4.What คือสิ่งนี้ขออภัย แต่ฉัน ma newbie ของ octave ----- ข้อความต้นฉบับ ----- จาก Luca Delucchi mailto อีเมลที่ซ่อนอยู่ ส่งเมื่อวันศุกร์ที่ 10 สิงหาคม พ. ศ. 2550 9 20 น. ถึงแปดเท่าถัวเฉลี่ยถ่วงน้ำหนักโดยเฉลี่ยถ่วงน้ำหนักสวัสดีฉันสามารถทำหน้าที่เกี่ยวกับค่าเฉลี่ยถ่วงน้ำหนักที่มีค่าในโหมดอัตโนมัตินี้ความคิดของฉัน y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y แต่มีเพียงหนึ่งสูตรที่ใช้สูตรสำหรับค่าทั้งหมดของเวกเตอร์ฉันหวังว่าฉันได้ให้คำอธิบายที่ชัดเจน Luca Help - octave รายการอีเมลที่ซ่อนอยู่ email. In ตอบกระทู้นี้โดย Luca Delucchi. Hi ฉันสามารถทำหน้าที่ใน Weighted การย้ายค่าเฉลี่ยโดยที่ค่าของฉันอยู่ในโหมดอัตโนมัติความคิดของฉัน y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y ฟังก์ชัน แต่มีเพียงสูตรเดียวที่ใช้สูตรสำหรับค่าทั้งหมดของเวกเตอร์คุณต้องคิดถึงข้อมูลของคุณในลักษณะอื่นถ้าคุณต้องการใช้ Matlab octave อย่างมีประสิทธิภาพข้อมูลจะแสดงเป็น vectors หรือ matrices และคุณควรทำอย่างไร การดำเนินงานทั้งหมดในข้อมูลทั้งหมด --- ไม่คิดว่าองค์ประกอบ y1, y2 ฯลฯ แต่จะจัดการกับเวกเตอร์ทั้งหมด y คุณจะต้องผสมองค์ประกอบเวกเตอร์จากตำแหน่งที่ต่างกันดังนั้นคุณต้องสร้างเวอร์ชันที่เปลี่ยนไปของเวกเตอร์ เช่น y 2 end คือเวกเตอร์ที่องค์ประกอบแรกเป็นองค์ประกอบที่สองของ y เมื่อคุณทำแบบนี้มันบังคับให้คุณรับรู้ปัญหาต่างๆที่เกิดขึ้นภายใต้พรมอย่างอื่นเช่นความหมายของค่าเฉลี่ยถ่วงน้ำหนักของคุณคืออะไร สำหรับ y1 ซึ่งไม่มีจุดข้อมูลก่อนหน้าหนึ่งวิธีอาจเป็นแบบจำลอง te แรกและสุดท้าย point. temp y 1 yy end อุณหภูมิเฉลี่ย 1 end-2 2 temp 2 end-1 temp 3 end 4.or ให้ขึ้นและยอมรับว่าคุณสามารถคำนวณค่าเฉลี่ยของเซตย่อยของ points. average y 1 end-2 2 y 2 end-1 y 3 end 4.There เป็นฟังก์ชัน octave เรียกว่ากรองที่สามารถใช้กรองเชิงเส้นโดยพลการมันค่อนข้างซับซ้อนเพราะจะช่วยให้ความคิดเห็นเชิงเส้นที่คุณ aren t สนใจในดังนั้นคุณ d ใช้รูปแบบเฉพาะของ เวกเตอร์การตอบรับ b 1 0 0 0 0 ตัวกรอง 0.average 1 2 1 4,1 y. Finally Octave มีตัวกรองบางตัวที่ฉันชอบคือตัวกรองการเก็บรักษา Savitzky-Golay 2 ช่วงการประมวลผลสัญญาณ 31 บทนี้อธิบาย การประมวลผลสัญญาณและการแปลงฟูเรียร์แบบเร็วที่มีอยู่ในการแปลงฟูเรียร์แบบเร็ว Octave จะคำนวณด้วยไลบรารี FFTW หรือ FFTPACK ขึ้นอยู่กับว่า Octave สร้างการแปลงฟูเรียร์แบบไม่ต่อเนื่องของ A โดยใช้อัลกอริธึม FFT แบบ Fast Fourier Transform FFT คำนวณตามลำดับแรก ขนาดเดียวของอาร์เรย์ดังนั้นถ้า x เป็นเมทริกซ์ fft xc omputes FFT สำหรับแต่ละคอลัมน์ของ x ถ้าถูกเรียกด้วยสองอาร์กิวเมนต์ n คาดว่าจะเป็นจำนวนเต็มระบุจำนวนองค์ประกอบของ x ที่จะใช้หรือเมทริกซ์เปล่าเพื่อระบุว่าควรละเว้นค่าของมันถ้า n มีขนาดใหญ่กว่า มิติตามที่มีการคำนวณ FFT แล้ว x จะปรับขนาดและเบาะด้วยศูนย์ถ้ามิฉะนั้นถ้า n มีขนาดเล็กกว่ามิติที่มีการคำนวณ FFT จากนั้น X จะถูกตัดทอนถ้าถูกเรียกด้วยสามอาร์กิวเมนต์ dim คือจำนวนเต็มที่ระบุมิติข้อมูล ของเมทริกซ์ตามที่ FFT ดำเนินการแปลงผกผันแบบไม่ต่อเนื่องผกผันของ A โดยใช้อัลกอริธึม FFT แบบฟาสฟูเรียร์การแปลง FFT แบบผกผันจะคำนวณตามมิติแรกที่ไม่ใช่ singleton ของอาร์เรย์ดังนั้นถ้า x เป็นเมทริกซ์ fft x คำนวณ ผกผัน FFT สำหรับแต่ละคอลัมน์ของ x ถ้าเรียกว่ามีสองอาร์กิวเมนต์ n คาดว่าจะเป็นจำนวนเต็มระบุจำนวนองค์ประกอบของ x ที่จะใช้หรือเมตริกซ์ว่างเพื่อระบุว่าควรละเว้นค่าของมันถ้า n มีขนาดใหญ่กว่ามิติ Alon g ซึ่งคำนวณ FFT แบบผกผันแล้ว x จะถูกปรับขนาดและเบาะด้วยศูนย์ถ้ามิฉะนั้นถ้า n มีขนาดเล็กกว่ามิติที่มีการคำนวณ FFT แบบผกผันแล้ว x จะถูกตัดทอนถ้าถูกเรียกด้วยอาร์กิวเมนต์สามค่าสลัวเป็นจำนวนเต็มที่ระบุ มิติของเมทริกซ์ตามที่ผกผัน FFT ดำเนินการแปลงฟูริเยร์แบบสองมิติแบบไม่ต่อเนื่องของ A โดยใช้อัลกอริธึม FFT แบบ Fast Fourier Transform FFT อาร์กิวเมนต์ตัวเลือก m และ n อาจใช้ระบุจำนวนแถวและคอลัมน์ของ A หากใช้ ของเหล่านี้มีขนาดใหญ่กว่าขนาดของ AA มีการปรับขนาดและเบาะด้วย zeros ถ้าเป็นเมทริกซ์หลายมิติแต่ละเมทริกซ์ย่อยสองมิติของ A จะได้รับการปฏิบัติแยกจากกันการแปลงฟูริเยร์แบบสองมิติแบบผกผันแบบสองทิศทางโดยใช้ Fast อัลกอริธึม FFT ของ Fourier Transform FFT อาร์กิวเมนต์ตัวเลือก m และ n สามารถใช้ระบุจำนวนแถวและคอลัมน์ของ A ถ้าหากขนาดใดที่มีขนาดใหญ่กว่าขนาด AA จะถูกปรับขนาดและเบาะด้วย zeros ถ้าเป็น multi-dimensi onal เมทริกซ์แต่ละตัวแบบย่อยสองมิติของ A ได้รับการแยกการแปลงฟูริเยร์แบบแยกส่วน N แบบแยกส่วนโดยใช้อัลกอริธึม FFT แบบ Fast Fourier Transform FFT อาร์กิวเมนต์เวกเตอร์ตัวเลือกอาจใช้ระบุมิติข้อมูลของอาร์เรย์ที่จะใช้ If องค์ประกอบของขนาดมีขนาดเล็กกว่ามิติที่สอดคล้องกันของ A แล้วขนาดของ A จะถูกตัดทอนก่อนที่จะทำการ FFT มิฉะนั้นหากองค์ประกอบของขนาดมีขนาดใหญ่กว่าขนาดที่เหมือนกัน A จะถูกปรับขนาดและเบาะด้วย zerospute ผกผัน N การแปลงฟูริเยร์แบบไม่ต่อเนื่องของ A โดยใช้อัลกอริธึม FFT Fast Fourier Transform FFT อาร์กิวเมนต์เวกเตอร์ที่เป็นตัวเลือกอาจระบุขนาดของอาร์เรย์ที่จะใช้หากองค์ประกอบของขนาดมีขนาดเล็กกว่ามิติที่สอดคล้องกันของ A มิติของ A จะถูกตัดทอน ก่อนที่จะดำเนินการผกผัน FFT มิฉะนั้นหากองค์ประกอบของขนาดมีขนาดใหญ่กว่าขนาดที่สอดคล้องกันแล้ว A จะปรับขนาดและเบาะด้วย zeros. Octave ใช้ FFTW lib raries เพื่อดำเนินการคำนวณ FFT เมื่อ Octave เริ่มต้นขึ้นและเริ่มต้นห้องสมุด FFTW พวกเขาอ่านไฟล์ระบบกว้างในระบบ Unix เป็นปกติภูมิปัญญา etc fftw ที่มีข้อมูลที่เป็นประโยชน์เพื่อเพิ่มความเร็ว FFT computations ข้อมูลนี้เรียกว่าภูมิปัญญา - ไฟล์กว้างช่วยให้ภูมิปัญญาที่จะใช้ร่วมกันระหว่างโปรแกรมประยุกต์ทั้งหมดที่ใช้ห้องสมุด FFTW ใช้ฟังก์ชัน fftw เพื่อสร้างและบันทึกภูมิปัญญาใช้สาธารณูปโภคที่ให้มาพร้อมกับห้องสมุด FFTW - ภูมิปัญญาในระบบ Unix คุณยังสามารถเพิ่มภูมิปัญญาที่สร้างโดย Octave ไป ข้อมูลภูมิปัญญาทั้งระบบสามารถใช้เพื่อเร่งการคำนวณ FFTs ได้อย่างมีนัยสำคัญ แต่หมายถึงค่าใช้จ่ายเบื้องต้นในการคำนวณเมื่อห้องสมุด FFTW ได้รับการเตรียมใช้งานระบบจะอ่านไฟล์ภูมิปัญญาของระบบโดยทั่วไปใน etc fftw ภูมิปัญญาที่ช่วยให้ภูมิปัญญาที่จะใช้ร่วมกันระหว่างการใช้งานอื่น ๆ กว่า Octave หรือฟังก์ชั่น FFTW สามารถนำมาใช้เพื่อนำเข้าภูมิปัญญาตัวอย่างเช่นจะบันทึก T เขามีภูมิปัญญาที่ใช้โดย Octave กับสายสติปัญญาสตริงนี้จะสามารถบันทึกไว้ในไฟล์และเรียกคืนโดยใช้คำสั่งบันทึกและโหลดตามลำดับนี้ภูมิปัญญาที่มีอยู่สามารถนำเข้าใหม่ดังต่อไปนี้ถ้าภูมิปัญญาเป็นสตริงว่างแล้วภูมิปัญญาที่ใช้ คือการล้างในระหว่างการคำนวณการแปลงฟูริเยร์ภูมิปัญญาต่อไปจะถูกสร้างขึ้นแฟชั่นที่ภูมิปัญญานี้ถูกสร้างขึ้นจะถูกควบคุมโดยฟังก์ชัน fftw มี 5 รูปแบบที่แตกต่างกันซึ่งภูมิปัญญาสามารถปฏิบัติได้ระบุว่าไม่มีการวัดเวลาในการทำงานของ วิธีที่ดีที่สุดในการคำนวณเฉพาะจะดำเนินการและ heuristic ง่ายจะใช้ในการเลือกแผนอาจ sub - optim ประโยชน์ของวิธีนี้คือมีค่าใช้จ่ายน้อยหรือไม่มีในการสร้างแผนซึ่งเหมาะสำหรับการแปลงฟูริเยร์ ที่จะคำนวณครั้งในกรณีนี้ช่วงของอัลกอริทึมที่จะดำเนินการแปลงได้รับการพิจารณาและดีที่สุดจะถูกเลือกขึ้นอยู่กับเวลาการดำเนินการของพวกเขาคล้ายกับการวัด แต่กว้างรัง e ของอัลกอริทึมถือว่าเหมือนการวัด แต่อัลกอริธึมที่เป็นไปได้ทั้งหมดซึ่งอาจใช้ในการประมวลผลการแปลงนั้นถือว่าเป็นวิธีการวัดค่าเวลาทำงานของอัลกอริทึมอาจมีราคาแพงนั่นคือการประนีประนอมที่ใช้วัดเพื่อแปลงขนาดของ 8192 และเกินกว่าที่ใช้วิธีการประมาณค่าวิธีการเริ่มต้นคือประมาณวิธีการปัจจุบันสามารถสอบถามได้ด้วยหรือใช้การตั้งค่าหมายเหตุว่าภูมิปัญญาที่คำนวณได้จะสูญหายไปเมื่อเริ่มต้นใหม่ Octave อย่างไรก็ตามข้อมูลภูมิปัญญาสามารถโหลดใหม่ได้หากได้รับการบันทึกไว้ ไปยังแฟ้มตามที่อธิบายไว้ข้างต้นแฟ้มภูมิปัญญาที่บันทึกไว้ไม่ควรใช้บนแพลตฟอร์มที่แตกต่างกันเนื่องจากพวกเขาจะไม่ได้มีประสิทธิภาพและจุดของการคำนวณภูมิปัญญาจะหายไปจำนวนเธรดที่ใช้ในการคำนวณแผนการและการดำเนินการแปลงสามารถตั้งค่าด้วย โปรดทราบว่าต้องมีการรวบรวมข้อมูลคู่ด้วยการสนับสนุน FFTW แบบมัลติเธรดสำหรับคุณลักษณะนี้จำนวนโปรเซสเซอร์ที่สามารถใช้งานได้ในปัจจุบันจะถูกใช้ต่อค่าเริ่มต้นแก้ไขสองเวกเตอร์ที่ใช้ FFT สำหรับ computation. c ff tconv xy ส่งกลับเวกเตอร์ของความยาวเท่ากับความยาว x ยาว y - 1 ถ้า x และ y เป็นค่าสัมประสิทธิ์ของเวกเตอร์สองพหุนามค่าที่ส่งกลับเป็นค่าสัมประสิทธิ์เวกเตอร์ของพหุนามของผลิตภัณฑ์การคำนวณใช้ FFT โดยเรียกฟังก์ชัน fftfilt If n อาร์กิวเมนต์ที่ระบุระบุ NFT FFT ใช้ฟิลเตอร์ x กับ FIR กรอง b โดยใช้ FFT ถ้า x เป็นเมตริกซ์กรองแต่ละคอลัมน์ของเมทริกซ์ให้อาร์กิวเมนต์ที่สามเป็นตัวเลือก n fftfilt ใช้การทับซ้อนกัน - เพิ่มวิธีการกรอง x ด้วย b โดยใช้ NFT FFT ขนาด FFT ต้องมีกำลังเท่ากับ 2 และต้องมากกว่าหรือเท่ากับความยาวของ b ถ้าค่า n ที่ระบุไม่ตรงตามเกณฑ์เหล่านี้จะถูกปรับโดยอัตโนมัติ ไปยังค่าที่ใกล้ที่สุดที่ใช้ตัวกรองแบบดิจิตอล 1 มิติกับตัวกรองข้อมูล x. filter จะคืนค่าวิธีแก้ปัญหาให้กับสมการความแตกต่างเชิงเส้นเวลาไม่แปรเปลี่ยนต่อไปนี้ที่ความยาว N -1 และ M length b -1 ผลลัพธ์จะถูกคำนวณ ในมิติ non-singleton แรกของ x หรือมากกว่า dim หากมีการระบุ รูปแบบของสมการคือที่ 1 caa 1 และ dba 1. ถ้าอาร์กิวเมนต์ที่สี่มีให้เป็นสถานะเริ่มต้นของระบบและสถานะสุดท้ายจะถูกส่งกลับเป็น sf เวกเตอร์สถานะเป็นเวกเตอร์ของคอลัมน์ที่มีความยาว เท่ากับความยาวของค่าสัมประสิทธิ์เวกเตอร์ที่ยาวที่สุดลบหนึ่งถ้า si ไม่ได้ระบุเวกเตอร์สถานะเริ่มต้นจะถูกตั้งค่าเป็นศูนย์ทั้งหมดในแง่ของ Z Transform y เป็นผลมาจากการส่งสัญญาณเวลาไม่ต่อเนื่อง x ผ่านระบบที่โดดเด่น โดยใช้ฟังก์ชันระบบที่มีเหตุผลดังต่อไปนี้ให้ใช้ตัวกรอง FIR 2-D FIR กับ x ถ้ารูปร่างอาร์กิวเมนต์ถูกระบุให้ส่งกลับอาร์เรย์ของรูปร่างที่ต้องการค่าที่เป็นไปได้คือ x. ด้วย x ศูนย์ด้วยทุกด้านก่อน filtering. unpadded x ค่าเริ่มต้น x ตัดหลังการกรองดังนั้นผลขอบจะไม่รวมหมายเหตุนี้เป็นเพียงรูปแบบใน convolution กับพารามิเตอร์กลับและ b หมุน 180 องศากลับความถี่ตอบสนองที่ซับซ้อน h ของตัวกรอง IIR มีเหตุผลที่มีเศษและสัมประสิทธิ์ตัวหารเป็น b และ a เคารพ ively การตอบสนองได้รับการประเมินที่ n ความถี่เชิงมุมระหว่าง 0 ถึง 2 pi ค่าที่ส่งออก w เป็นเวกเตอร์ของความถี่ถ้าเป็นละเว้นตัวหารจะถือว่าเป็น 1 ซึ่งตรงกับตัวกรอง FIR แบบง่ายๆถ้า n คือ ละเว้นค่าของ 512 จะสันนิษฐานสำหรับการคำนวณที่เร็วที่สุด n ควรเป็นปัจจัยในจำนวนเล็ก ๆ primes. If อาร์กิวเมนต์ที่สี่ทั้งหมดถูกละเว้นการตอบสนองมีการประเมินที่ความถี่ระหว่าง 0 และ pi. Evaluate การตอบสนองที่ความถี่เฉพาะใน เวกเตอร์ w ค่าสำหรับ w จะวัดเป็นเรเดียนค่าความถี่ย้อนกลับเป็นค่า Hz แทนเรเดียนสมมติว่าอัตราการสุ่มตัวอย่าง Fs ถ้าคุณกำลังประเมินการตอบสนองที่ความถี่เฉพาะ w ความถี่เหล่านี้ควรได้รับการร้องขอใน Hz แทนที่จะเป็น radians. Plot ขนาดและเฟส การตอบสนองของ h แทนที่จะส่งข้อมูลเหล่านั้นให้มากขึ้นการวัดขนาดและเฟสของ h ถ้าอาร์กิวเมนต์ freqnorm เป็นทางเลือกจำเป็นจริงเวกเตอร์ความถี่ w จะอยู่ในหน่วยของเรเดียน normalized ถ้า freqnorm เป็นเท็จหรือไม่ได้รับแล้ว w คือ วัดในฟังก์ชัน Hertzpute sinc ส่งผลให้ขั้นตอนของเรเดียนโดยการเพิ่มทวีคูณของ 2 pi ตามความเหมาะสมเพื่อลบการกระโดดมากกว่าค่าเริ่มต้น tol. tol ไปเป็น pi. Unwrap จะทำงานตามขนาด dim ถ้า dim ไม่ได้กำหนดค่าเริ่มต้น ไปยังมิติข้อมูลที่ไม่ใช่ singleton แรกให้เป็นแบบจำลองการถดถอย ARCH กับชุดข้อมูลเวลา y โดยใช้ขั้นตอนการให้คะแนนในต้นฉบับ ARCH paper ของ Engle ซึ่งเป็น n 0, ht ให้เวกเตอร์แบบเวลา y ถึง t-1 และเมทริกซ์ของ regressors ปกติ x ถึง t ลำดับของการถดถอยของความแปรปรวนที่เหลือจะถูกระบุโดย p ถ้าถูกเรียกเป็น archset ykp ที่มีจำนวนเต็มบวก k ให้พอดีกับกระบวนการ ARCH kp คือทำด้านบนด้วยแถว t - th ของ x ให้โดยโดยนัยหนึ่งสามารถระบุจำนวนครั้ง iterations iterations ปรับปรุงแกมมาปัจจัยและค่าเริ่มต้น a0 และ b0 สำหรับขั้นตอนการให้คะแนนคำนวณลำดับ ARCH ยาว t กับสัมประสิทธิ์ AR b และ CH สัมประสิทธิ์ a. ผล yt ดังนี้ model. where et ให้ y ถึงเวลา t-1 คือ N 0, ht ด้วยสำหรับแบบจำลองการถดถอยเชิงเส้นใช้แบบทดสอบตัวคูณลากรองจ์ LM ของสมมุติฐานสมมติฐานว่าไม่มี heteroscedascity ไม่มีเงื่อนไขกับทางเลือกของ CH pI e เป็นแบบจำลอง y ถึง t-1 และ x ถึง tet คือ N 0, ht with. and null เป็น 1 ap 0. ถ้าอาร์กิวเมนต์ที่สองเป็นจำนวนเต็มแบบสเกลาร์ k ทำแบบทดสอบเดียวกันในแบบจำลองของ autoregression kie กับแถว t-th ของ x. Under null, LM มีการแจกแจง chisquare กับองศา p ของเสรีภาพและ pval เป็นค่า p - 1 ลบ CDF ของการกระจายนี้ที่ LM ของการทดสอบหากอาร์กิวเมนต์ขาออกไม่ได้รับการกำหนดค่า p - จะแสดงผลกลับ การจำลองรูปแบบ ARMA แบบ ARMA ถูกกำหนดโดย by. in ซึ่ง k คือความยาวของเวกเตอร์อัลเป็นความยาวของเวกเตอร์ b และ e เป็นสัญญาณสีขาวแบบเกาส์กับความแปรปรวน v ฟังก์ชันจะส่งกลับเวกเตอร์ของความยาว t พารามิเตอร์ n ให้จำนวนของ dummy xi ที่ใช้สำหรับการเริ่มต้นเช่นลำดับความยาว tn ถูกสร้างขึ้นและ xn 1 tn คือ return ถ้า n ถูกละเลย n 100 ถูกใช้ให้เวกเตอร์ชุดเวลา y คืนค่าเมทริกซ์กับค่าที่อยู่ในคอลัมน์แรกและค่าความล่าช้าของ k แรกใน y ในคอลัมน์อื่น ๆ ในคำอื่น ๆ สำหรับ tk 1, yt -1 , yt - k เป็นแถวลำดับที่ t ของผลลัพธ์เมทริกซ์ผลลัพธ์อาจถูกใช้เป็นเมทริกซ์แบบ regressor ใน autoregressions ให้กลับค่าสัมประสิทธิ์ของตัวกรองของหน้าต่างบาร์ตเลตต์สามเหลี่ยมที่มีความยาว m สำหรับคำจำกัดความของหน้าต่าง Bartlett ให้ดู, ตัวอยางเชน AV Oppenheim RW Schafer, การประมวลผลสัญญาณแบบไมตอเนื่อง (Discrete-Time Signal Processing) หามปอนคาสัมประสิทธิ์การกรองของหนาตาง Blackman o ความยาว m หากถาเลือกอาร์กิวเมนต์เป็นระยะ ๆ จะมีการ ด้วยค่าสัมประสิทธิ์สุดท้ายที่ถูกลบอาร์กิวเมนต์ตัวเลือกสมมุติเทียบเท่ากับไม่ระบุอาร์กิวเมนต์ที่สองสำหรับนิยามของหน้าต่าง Blackman ให้ดูเช่น AV Oppenheim RW Schafer, การประมวลผลสัญญาณแบบไม่ต่อเนื่องเวลาถ้า x เป็นเวกเตอร์ detrend xp จะลบ พอดีกับพหุนามของหรือ der p จากข้อมูล x ถ้า x เป็นเมตริกซ์ detrend xp จะเหมือนกันสำหรับแต่ละคอลัมน์ในอาร์กิวเมนต์ x อาร์กิวเมนต์ที่สอง p เป็นค่าที่ระบุถ้าไม่ได้ระบุค่า 1 จะถือว่าค่านี้สอดคล้องกับการลบแนวโน้มเชิงเส้น ลำดับของพหุนามยังสามารถได้รับเป็นสตริงซึ่งในกรณี p ต้องเป็นค่าคงที่สอดคล้องกับ p 0 หรือเชิงเส้นตรงกับ p 1.Return estimator d สำหรับพารามิเตอร์ differencing ของชุดเวลาแบบบูรณาการความถี่จาก 2 pi ที่, 2 pi b T ใช้สำหรับการประมาณค่าถ้า b ถูกละเว้นช่วงเวลา 2 pi T, 2 pi a T ใช้ถ้าทั้ง b และ a ถูกละไว้แล้วจะใช้ 0 5 sqrt T และ b 1 5 sqrt T โดยที่ T คือขนาดของตัวอย่างถ้า x เป็นเมตริกซ์ค่าประมาณของแต่ละคอลัมน์จะประมาณค่าประมาณของความถี่ทั้งหมดในช่วงเวลาที่กล่าวไว้ข้างต้นจะแสดงเป็นค่า dd ค่าของ d เป็นเพียงค่าเฉลี่ยของ dd. Reference PJ Brockwell RA Davis Time ทฤษฎีซีรีส์และวิธีการ Springer 1987. ขั้นตอนหนึ่งของอัลกอริธึม Durbin-Levinson. vec tor c ระบุ autocovariances gamma0,, gammat จาก lag 0 ถึง t oldphi ระบุค่าสัมประสิทธิ์ตาม ct -1 และ oldv ระบุข้อผิดพลาดที่ตรงกันหาก oldphi และ oldv ถูกละไว้ขั้นตอนทั้งหมดจาก 1 ถึง t ของอัลกอริทึมจะดำเนินการ การเปลี่ยนแปลงของเวกเตอร์ x สำหรับใช้กับฟังก์ชัน fft และ ifft เพื่อย้ายความถี่ 0 ไปยังจุดศูนย์กลางของเวกเตอร์หรือเมทริกซ์ถ้า x เป็นเวกเตอร์ของ N elements ที่สอดคล้องกับตัวอย่าง N timeed โดย dt แล้ว fftshift fft x สอดคล้องกับความถี่ถ้า x เป็นเมทริกซ์เดียวกันถือสำหรับแถวและคอลัมน์ถ้า x เป็นอาร์เรย์แล้วเดียวกันถือตามมิติแต่ละอาร์กิวเมนต์สลัวเลือกสามารถใช้เพื่อ จำกัด มิติตามที่เกิดขึ้นการเปลี่ยนแปลงเกิดขึ้น การกระทำของฟังก์ชั่น fftshift สำหรับความยาว x fftshift เป็นของตัวเองผกผัน แต่ความแตกต่างของความยาวแตกต่างกันเล็กน้อยความแตกต่าง 1-L dx ที่ L หมายถึงตัวดำเนินการล่าช้าและ d มากกว่า -1 กลับค่าสัมประสิทธิ์ของตัวกรอง หน้าต่าง Hamming ของ lengt h m ถ้าอาร์กิวเมนต์ตัวเลือกเป็นระยะ ๆ จะได้รับรูปแบบเป็นระยะ ๆ ของหน้าต่างจะถูกส่งกลับค่านี้เท่ากับหน้าต่างของความยาว m 1 ที่มีค่าสัมประสิทธิ์สุดท้ายถูกลบอาร์กิวเมนต์ที่เป็นตัวเลือกสมมุติฐานเทียบเท่ากับไม่ระบุอาร์กิวเมนต์ที่สองสำหรับนิยาม ของหน้าต่าง Hamming ดูเช่น AV Oppenheim RW Schafer, การประมวลผลสัญญาณแบบไม่ต่อเนื่องเวลากลับค่าสัมประสิทธิ์ของตัวกรองของหน้าต่าง Hanning ความยาว m ถ้าอาร์กิวเมนต์เป็นตัวเลือกที่กำหนดจะได้รับรูปแบบเป็นระยะ ๆ ของหน้าต่างนี้จะถูกส่งกลับ หน้าต่างความยาว m 1 ที่มีค่าสัมประสิทธิ์สุดท้ายถูกลบอาร์กิวเมนต์ที่เป็นตัวเลือกสมมุติฐานเทียบเท่ากับไม่ระบุอาร์กิวเมนต์ที่สองสำหรับนิยามของหน้าต่าง Hanning ให้ดูเช่น AV Oppenheim RW Schafer การประมวลผลสัญญาณแบบไม่ต่อเนื่องเวลาใช้พารามิเตอร์ Hurst ของ ตัวอย่าง x ผ่านทางสถิติช่วงที่ถูกรีเฟรชถ้า x เป็นเมทริกซ์พารามิเตอร์นี้จะประมาณสำหรับทุกคอลัมน์ให้กลับไปหา Cubic Hermite อีกครั้งการแทรกแซงพหุนาม pchip ของจุด x และ ถ้าเรียกว่ามีอาร์กิวเมนต์สองตัวให้ส่งพหุนาม pp ที่อาจใช้ร่วมกับ ppval เพื่อประเมินพหุนามที่จุดเฉพาะเมื่อเรียกด้วยอาร์กิวเมนต์อินพุทที่สาม pchip ประเมินพหุนาม pchip ที่จุด xi รูปแบบการเรียกที่สามมีค่าเท่ากัน เพื่อ ppval pchip xy, xi ตัวแปร x ต้องเป็นเวกเตอร์ monotonic อย่างเคร่งครัดทั้งที่เพิ่มหรือลดความยาว ny สามารถเป็นได้ทั้งเวกเตอร์หรืออาร์เรย์ถ้า y เป็นเวกเตอร์ก็ต้องมีความยาวเท่ากับ n เป็น x ถ้า y เป็นอาร์เรย์ จากนั้นขนาดของ y จะต้องมีรูปแบบ s1 s2, sk n อาร์เรย์ถูกปรับเปลี่ยนใหม่ภายในเมทริกซ์ที่มิตินำโดย s1 s2 sk และแต่ละแถวของเมตริกซ์นี้จะได้รับการแยกจากกันสังเกตว่าตรงข้ามกับ interp1 แต่จะทำเพื่อความเข้ากันได้ของ MATLAB ย้อนกลับ periodogram พลังงานสเปกตรัมความหนาแน่นของปัจจัยการผลิต x. The ที่เป็นไปได้คือเวกเตอร์ data ถ้า x เป็นจริงมูลค่าสเปกตรัมด้านเดียวคือประมาณถ้า x เป็นค่าที่ซับซ้อนหรือช่วงระบุ twosided คลื่นเต็มรูปแบบ คือ est imated. window ข้อมูลน้ำหนักถ้าหน้าต่างว่างเปล่าหรือไม่ระบุหน้าต่างเริ่มต้นเป็นรูปสี่เหลี่ยมผืนผ้าใช้มิฉะนั้นหน้าต่างจะถูกใช้กับสัญญาณ x ชนะก่อนประมวลผล periodogram ข้อมูลหน้าต่างต้องเป็นเวกเตอร์ที่มีความยาวเท่ากับ x. number ของช่องความถี่ ค่าดีฟอลต์คือ 256 หรือกำลังสูงกว่าถัดไป 2 เท่ามากกว่าความยาว x สูงสุด 256, 2 nextpow2 ความยาว x หาก nfft มีค่ามากกว่าความยาวของอินพุต x จะเท่ากับศูนย์เบรกจนถึงความยาวของ nfft. sampling rate ค่าเริ่มต้นคือ 1.range ของสเปกตรัม onesided คำนวณสเปกตรัมจาก twosided คำนวณสเปกตรัม from. The เอาท์พุทสองตัวเลือก w เป็นความถี่เชิงมุม normalized สำหรับการคำนวณด้านเดียว w อยู่ในช่วง 0, pi ถ้า nfft เป็นได้และ 0, pi ถ้า nfft เป็นเลขคี่เช่นเดียวกันสำหรับการคำนวณสองด้าน w อยู่ในช่วง 0, 2 pi หรือ 0, 2 pi ขึ้นอยู่กับ nfft ถ้ามีการระบุความถี่การสุ่มตัวอย่าง Fs แล้วความถี่เอาต์พุต f จะอยู่ในช่วง 0, Fs 2 หรือ 0, Fs 2 สำหรับการคำนวณแบบด้านเดียวสำหรับการคำนวณสองด้าน s ช่วงจะเป็น 0, Fs. When เรียกว่าไม่มีการแสดงผล periodogram เป็นพล็อตทันทีในหน้าต่างรูปปัจจุบันหมุนกลับ sinetone ของ freq ความถี่ที่มีความยาววินาทีวินาทีที่อัตราการสุ่มตัวอย่างอัตราและมี amplitude ampl อาร์กิวเมนต์ freq และ ampl อาจเป็นพาหะของขนาดทั่วไปค่าเริ่มต้นคืออัตรา 8000, sec 1 และ ampl 64. กลับ vector m-element ด้วย i - th โดย sin 2 pi id -1 n ค่าเริ่มต้นสำหรับ d คือ 0 และ ค่าเริ่มต้นสำหรับ n คือ m ให้รีสตาร์ทตัวประมาณความหนาแน่นของสเปกตรัมให้เวกเตอร์ของชื่อหน้าต่าง autocovariances c และแบนด์วิธ b ชื่อหน้าต่างเช่นสามเหลี่ยมหรือสี่เหลี่ยมผืนผ้าถูกใช้เพื่อค้นหาฟังก์ชันที่เรียกว่า win lw ถ้าไม่ได้รับการยกเว้น , หน้าต่างรูปสามเหลี่ยมถูกใช้ถ้า b ถูกละไว้ใช้ x ยาว 1 sqrt ให้รีเซ็ตตัวประมาณความหนาแน่นของสเปกตรัมให้ vector ข้อมูลชื่อ x ชื่อวินและแบนด์วิธ b ชื่อหน้าต่างเช่นสามเหลี่ยมหรือสี่เหลี่ยมผืนผ้าถูกใช้เพื่อค้นหา ฟังก์ชั่นที่เรียกว่า win sw ถ้าเอาชนะละเว้นหน้าต่างรูปสามเหลี่ยมถูกใช้ถ้า b คือ omi tted ความละเอียด 1 sqrt x ใช้ค่าเฉลี่ยถ่วงน้ำหนัก 15 วินาทีของแต่ละคอลัมน์ของ xpute การแปลงฟูเรียร์ในระยะเวลาสั้น ๆ ของเวกเตอร์ x กับค่าสัมประสิทธิ์ numcoef โดยการใช้หน้าต่างของจุดข้อมูลที่ชนะและเพิ่มจุด inc ก่อน การคำนวณการแปลงฟูริเยร์หนึ่งในหน้าต่างต่อไปนี้ถูกนำมาใช้ชื่อหน้าต่างสามารถส่งผ่านเป็นสตริงหรือตามหมายเลข wintype ค่าเริ่มต้นต่อไปนี้ใช้สำหรับอาร์กิวเมนต์ที่ไม่ระบุชื่อที่ชนะ 80, inc 24, numcoef 64 และ wintype 1.y stft x คืนค่าสัมบูรณ์ของสัมประสิทธิ์ Fourier ตามความถี่บวก numcoef yc stft x ส่งกลับค่าทั้ง y ของ stFT x และเวกเตอร์ 3 องค์ประกอบที่มีขนาดหน้าต่างเพิ่มขึ้นและชนิดของหน้าต่างซึ่งเป็นหน้าที่ของฟังก์ชันการสังเคราะห์สัญญาณจากการแปลงฟูเรียร์ y ในเวลาอันสั้นและองค์ประกอบ 3 vector c ระบุขนาดหน้าต่างเพิ่มขึ้นและชนิดของหน้าต่างค่า y และ c สามารถหาได้โดยใช้แบบ AR p - แบบจำลองที่มีการประมาณการ Yule-Walker ให้เวกเตอร์ c ของ autocovariances gamma0,, gammap. Return ค่าสัมประสิทธิ์ของอาร์เรย์ และค่าความแปรปรวนของเสียงสีขาว v. vectorized moving average. y filter 1 10 ตัว 1, 10, 1, x สมมติว่าค่าที่เวลาลบ x 0, x -1 ฯลฯ ทั้งหมดเป็นศูนย์ตัวอย่างเช่น ค่าแรกของ y จะเป็น x 1 10.On พุธ, 7 พฤษภาคม 2010 เวลา 3 น. น., Tim Rueth อีเมล์ที่ซ่อนไว้เขียนว่าฉันมองทั้งตัวแปลงและตัวกรอง แต่ไม่สามารถคิดออกว่าจะทำอย่างไรกับค่าเฉลี่ยเคลื่อนที่กับบางที ฉันไม่เข้าใจหน้าที่ของ vars ใส่ได้อย่างถูกต้องแจ้ง s ว่าฉันมีอาร์เรย์แรนด์ 1,100 คุณสามารถบอกฉันว่าฉัน d ใช้ conv และกรองเพื่อ t ake กล่าวว่าค่าเฉลี่ยเคลื่อนที่ 10 วันของมันโดยมีน้ำหนักเป็น 0 5 --------- ข้อความต้นฉบับ ----- จาก Andy Buckle mailto อีเมลที่ซ่อนไว้ส่งเมื่อวันพฤหัสบดีที่ 06 พฤษภาคม 2010 เวลา 12 06 น. ถึงอีเมลที่ซ่อนอยู่ Cc hidden email หัวเรื่อง Re vectorized conv เฉลี่ย conv เป็นไฟล์ m แต่มีเพียงไม่กี่ ifs ในนั้นเรียกตัวกรองเพื่อให้ได้งานทำซึ่งเป็น oct ไฟล์ Andy On Thu, 6 พฤษภาคม 2010 เวลา 6 28 น. Tim Rueth อีเมลที่ซ่อนเขียนใครรู้วิธีการใช้ n - วันค่าเฉลี่ยเคลื่อนที่ถ่วงน้ำหนักของเวกเตอร์โดยไม่ใช้ for-loop ฉันมองไปที่รหัส M สำหรับ movavg และจะใช้สำหรับวงดังนั้นฉันคาดเดาอาจมี isn วิธี ta แต่ฉันคิดว่าฉันต้องการตรวจสอบ Thanks --Tim Help - octave รายชื่อผู้รับจดหมายที่ซ่อนอีเมล - buckles. Thanks andy แสดงวิธีการใช้ตัวกรองเพื่อทำค่าเฉลี่ยเคลื่อนที่ง่ายฉันใช้รหัสของคุณและเห็นด้วยกับ movavg x, 10,10,0 ซึ่งคำนวณค่าเฉลี่ยเคลื่อนที่ 10 วันมีเพียงความแตกต่างใน 9 อันดับแรกเนื่องจากค่าสันนิษฐานของค่าลบ movavg จะคำนวณค่า run-i n period ขณะที่คุณอาจจำได้ฉันพยายามจะใช้ตัวกรองเพื่อหลีกเลี่ยงการ movavg s สำหรับ - loop ตอนนี้สิ่งที่ฉันพยายามจะทำคือค่าเฉลี่ยเคลื่อนที่ถ่วงน้ำหนักเหมือนกับพารามิเตอร์ alpha ของ movavg เมื่อ alpha 0 มันง่ายมากที่จะย้าย เฉลี่ยและเห็นด้วยกับตัวกรองถ้าฉันเปลี่ยน alpha เป็น 1 ฉันสมมุติว่าจะได้รับ MA เชิงเส้นที่นี่รหัสของ movavg m ที่ไม่นำน้ำหนักเป็นจำนวนวันเฉลี่ยเท่ากับ 10 ใน case. lead ข้างต้น 1 นำอัลฟาการปรับน้ำหนักให้เท่ากับตะกั่วตะกั่วตะกั่ว 1 นำไปสู่ดังนั้นสำหรับการนำ 10 วันค่าเฉลี่ยเคลื่อนที่เชิงเส้น 10, alpha 1 ในช่วง 9 วันก่อนหน้าและวันปัจจุบันควรมีน้ำหนักดังนี้ 1 55, 2 55, 3 55 10 55 กับน้ำหนักที่มากที่สุด 10 55 นำไปใช้กับวันปัจจุบันดังนั้นฉันพยายามทดสอบกรณีง่ายๆที่มีเพียง 2 วัน MA บนองค์ประกอบ 6 องค์ประกอบ 2 alpha 1 len 6 a rand 1 len คำนวณ MA โดยใช้ movavg ma movavg a, madays, madays, alpha คำนวณ MA โดยใช้ตัวกรองกวาด 1 madays อัลฟา normsweep กวาดรวมกวาด f กรอง normsweep, 1, aT เขา movavg และกรองผลลัพธ์จะคล้ายคลึงกัน แต่ไม่เท่ากันฉันคาดเดาฉัน don t มีอาร์กิวเมนต์สำหรับตัวกรองที่ถูกต้อง แต่ฉันสามารถ t คิดออกว่า ฉันไม่ผิดโดยเฉพาะฉัน m ไม่แน่ใจว่าข้อโต้แย้งที่สองของตัวกรองควรจะทำอย่างไร Help. I ไม่แน่ใจว่าคุณหมายถึงอะไรโดยการชั่งน้ำหนักของ 0 5 แต่จะทำเฉลี่ย 10 วันง่ายๆก็ d be. y ตัวกรอง 1 10 ตัว 1, 10, 1, x ซึ่งสมมติวาคาในเวลาลบ x 0, x -1 ฯลฯ เปนศูนยดังนั้นยกตัวอย่างเช่นค่าแรกของ y จะเป็น x 1 10.On พ. 7, 2010 ที่ 3 33 PM, Tim Rueth อีเมลที่ซ่อนเขียนฉันดู conv และกรอง แต่ t สามารถคิดวิธีการทำเฉลี่ยเคลื่อนที่กับพวกเขาบางทีฉัน m ไม่เข้าใจหน้าที่ของ vars ใส่ถูกต้องพูดถึง ฉันมีอาร์เรย์แรนด์ 1,100 คุณสามารถบอกฉันได้อย่างไรว่าฉันจะใช้ conv และ filter เพื่อบอกว่าค่าเฉลี่ยเคลื่อนที่ 10 วันของมันมีค่า 0 5 ----------- ข้อความต้นฉบับ ---- - จาก Andy Buckle mailto อีเมลที่ซ่อนไว้ Sent Thursday, May 06, 2010 12 06 AM ไปยังอีเมลที่ซ่อนอยู่ Cc ซ่อนเรกคอร์ดหัวเรื่อง Re vectorized conv เฉลี่ย conv เป็นไฟล์ m แต่มีเพียงไม่กี่ ifs ในนั้นก็เรียกกรองเพื่อให้ได้งาน Tim เรยท์อีเมล์ที่ซ่อนไว้เขียนว่าใครรู้วิธีใช้ค่าเฉลี่ยเคลื่อนที่ที่ถ่วงน้ำหนักของ n-day ของเวกเตอร์โดยไม่ใช้ loop for-loop ฉันมองไปที่ M รหัสสำหรับ movavg และจะใช้ for-loop ดังนั้นฉันคาดเดาอาจมีทาง isn ta แต่ฉันคิดว่าฉันต้องการตรวจสอบ Thanks --Tim Help - แปดเลี้ยวรายชื่อผู้รับจดหมายที่ซ่อนอีเมล - andy buckle. Your รหัสกรองด้านล่างทำงานเพียง ดีเมื่อเทียบกับสิ่งที่ฉันได้รับการทำยกเว้นจำนวนวันเริ่มต้นเนื่องจากสิ่งที่ค่าจะถือว่าในเชิงลบเวลาที่ฉันได้ใช้ ndays รหัสต่อไปนี้คือจำนวนวันที่จะใช้เมื่อคำนวณค่าเฉลี่ยเคลื่อนที่เลขคณิตของ ข้อมูลข้อมูลคือข้อมูลเวกเตอร์ของคอลัมน์แทนที่ข้อมูล 1 ndays ครั้งที่เวลา t เขาจุดเริ่มต้นของข้อมูลสำหรับค่าลบเวลาอัลฟา 2 ndays 1 n ข้อมูลความยาวเฉลี่ยศูนย์ n avg 1 ข้อมูล 1 คำแนะนำข้างต้นเป็นสิ่งที่คุณต้องคิดค้นหน่วยความจำที่ผ่านมาสำหรับค่าลบคุณควรทำเช่นเดียวกันสำหรับฟังก์ชั่นการกรอง แต่ ฉันไม่สามารถพูดถึงวิธีการที่จะทำมัน offhand. for i 2 n ao avg i-1 avg i ao อัลฟาข้อมูล i - ao endfor ตัดออกใช้ในระยะเวลาค่าลบเวลา longma longma lmadays 1 end. I don t เข้าใจข้างต้น longma. For ค่าเล็ก ๆ ของ ndays จำนวนวันเริ่มต้นที่มีความแตกต่างกับการใช้ตัวกรองของคุณน้อยที่สุด แต่สำหรับค่าที่มากขึ้นของ ndays จำนวนวันเริ่มต้นของความแตกต่างเติบโตขึ้นอย่างเห็นได้ชัดเนื่องจากลักษณะของ exponential MA มีหน่วยความจำระยะยาวหมายเหตุฉันเพิ่มค่าเวลาเชิงลบที่คล้ายกันไปด้านหน้าของเวกเตอร์เมื่อใช้ตัวกรองเช่นกันฉัน m ไม่แน่ใจว่าการประชุมคืออะไรเมื่อมันมาถึงการคำนวณค่าเฉลี่ยเคลื่อนที่ชี้เฉพาะสำหรับจุดในข้อมูลที่ ndays กลับเข้าสู่ช่วงลบ ขอขอบคุณอีกครั้ง - Francesco Potort ricercatore Voice 39 050 315 3058 op 2111 ISTI - Area della ricerca CNR โทรสาร 39 050 315 2040 ผ่าน G Moruzzi 1, I-56124 Pisa อีเมลล์ทางเข้าอีเมลที่ซ่อนอยู่ 20 ชั้น 1 ห้อง C71 Web Help-octave รายชื่ออีเมลที่ซ่อนอยู่อีเมลฉันสามารถตรวจสอบได้ในขณะนี้ แต่ถ้าฉันจำได้อย่างถูกต้องอาร์กิวเมนต์ที่ 4 เพื่อกรองเป็นเงื่อนไขเริ่มต้นดังนั้นบางอย่างเช่นถ้าคุณต้องการให้เงื่อนไขแรกของคุณจะเป็นค่าแรกของข้อมูลผมคิดว่าคำสั่งจะเป็น alpha 1, alpha-1 s filter b, a, x, x 1.It ต้องเป็นองค์ประกอบเดียวในกรณีนี้เนื่องจากเงื่อนไขเริ่มแรกที่คุณต้องการคือ s0.On พฤหัสบดี, พฤษภาคม 13, 2010 at 2 21 AM, Francesco Potort ซ่อนอีเมลที่เขียนไว้รหัสกรองของคุณด้านล่างทำงานได้ดีเมื่อเทียบกับสิ่งที่ฉันได้ทำยกเว้นจำนวนวันเริ่มต้นเนื่องจากค่าที่จะสันนิษฐานในเวลาลบที่ฉันได้ใช้ ndays รหัสต่อไปนี้คือ จำนวนวันที่จะใช้เมื่อคำนวณค่าเฉลี่ยเคลื่อนที่แบบเสวนาของข้อมูลเป็นข้อมูลเวกเตอร์ของคอลัมน์ repmat data 1, ndays, 1 ข้อมูลซ้ำข้อมูล 1 ndays ครั้งที่จุดเริ่มต้นของข้อมูลสำหรับค่าลบเวลา alpha 2 ndays 1 n ข้อมูลยาว avg zeros n, 1 avg 1 ข้อมูล 1. คำแนะนำข้างต้นเป็นสิ่งที่คุณต้องคิดค้นหน่วยความจำที่ผ่านมา สำหรับค่าลบคุณควรทำเช่นเดียวกันสำหรับฟังก์ชั่นการกรอง แต่ฉันไม่สามารถพูดได้ว่าจะทำอย่างไรให้เป็นประโยชน์สำหรับ i 2 n ao avg i-1 ข้อมูล aa alpha a - i - ao endoff ตัดการทำงานในระยะเวลาสำหรับลบ time values ​​longma longma lmadays 1 end. I don t เข้าใจคำแนะนำข้างต้นเป็น longma. For ค่าเล็ก ๆ ของ ndays จำนวนวันเริ่มต้นที่มีความแตกต่างกับการใช้งานตัวกรองของคุณน้อยที่สุด แต่สำหรับค่าขนาดใหญ่ของ ndays จำนวน of initial days of discrepancy grows obviously, due to the nature of an exponential MA having a long-tail memory Note, I add similar negative time values to the front of the vector when using filter as well I m just not sure what is the convention when it comes to calculating exponential moving averages for points in data where ndays reaches back into negative time Thanks again.-- Francesco Potort ricercatore Voice 39 050 315 3058 op 2111 ISTI - Area della ricerca CNR Fax 39 050 315 2040 via G Moruzzi 1, I-56124 Pisa Email hidden email entrance 20, 1st floor, room C71 Web. In reply to this post by Francesco Potort. The last instruction with longma should have read avg avg n 1 end which effectively trims off the computed values from negative time But, as you say, it looks like I didn t need to do this because the history is completely captured in avg 1 data 1 , so no need to compute a run-in time Thanks Francesco. Sherman had found that I can set the initial condition by specifying a 4th parameter in filter equal to the first data point I tried this, and got very similar but not quite exact results when compared to the for-loop below with no negative time values But this small difference dissipated within ndays and isn t a big deal Thanks Sherman. In summary, to calculate the exponential moving average of data for ndays , the following code. alpha 2 ndays 1 n length data avg zeros n,1 avg 1 data 1 for i 2 n ao avg i-1 avg i ao alpha data i - ao endfor. is close, but not quite equal to. alpha 2 ndays 1 avg filter alpha, 1 alpha-1 , data, data 1.for roughly the first ndays of avg.-----Original Message----- From Francesco Potort mailto hidden email Sent Wednesday, May 12, 2010 11 22 PM To hidden email Cc Octave-ML James Sherman Jr Subject Re vectorized moving average Your filter code below works just fine when compared to what I had been doing, except for a number of initial days, due to what values are assumed in negative time I had been using the following code ndays is the number of days to be used when computing the exponential moving average of data data is a column vector data repmat data 1 , ndays, 1 data repeat data 1 ndays times at the beginning of data for negative time values alpha 2 ndays 1 n length data avg zeros n,1 avg 1 data 1 The above instruc tion is all you need to invent past memory for negative values You should do the same for the filter function, but I could not say how to do it offhand for i 2 n ao avg i-1 avg i ao alpha data i - ao endfor trim off run-in period for negative time values longma longma lmadays 1 end I don t understand the above instruction What is longma For small values of ndays, the number of initial days where there s a discrepancy with your filter implementation is minimal, but for larger values of ndays, the number of initial days of discrepancy grows obviously, due to the nature of an exponential MA having a long-tail memory Note, I add similar negative time values to the front of the vector when using filter as well I m just not sure what is the convention when it comes to calculating exponential moving averages for points in data where ndays reaches back into negative time Thanks again -- Francesco Potort ricercatore Voice 39 050 315 3058 op 2111 ISTI - Area della ricerca CNR Fax 39 050 315 2 040 via G Moruzzi 1, I-56124 Pisa Email hidden email entrance 20, 1st floor, room C71 Web. So, this bugged me, so I looked a bit at the filter function, and I think I found where the mistake was in my initial suggestion The initial condition vector has to do with the internal states of the filter not the negative time outputs of the filter at least not directly , so to get what I think is exactly what your code with the for loop, the filter line should be. avg filter alpha, 1 alpha-1 , data, data 1 1-alpha. It is rather unintuitive why the 1-alpha term needs to be there, and I don t know if there s much interest in it, but it shouldn t be that hard probably I just need to crack open my signals and systems book to write a function to calculate the those initial conditions that the filter function expects just giving the outputs and inputs from negative time. On Thu, May 13, 2010 at 8 38 PM, Tim Rueth hidden email wrote The last instruction with longma should have read avg avg n 1 end which effectively trims off the computed values from negative time But, as you say, it looks like I didn t need to do this because the history is completely captured in avg 1 data 1 , so no need to compute a run-in time Thanks Francesco. Sherman had found that I can set the initial condition by specifying a 4th parameter in filter equal to the first data point I tried this, and got very similar but not quite exact results when compared to the for-loop below with no negative time values But this small difference dissipated within ndays and isn t a big deal Thanks Sherman. In summary, to calculate the exponential moving average of data for ndays , the following code. alpha 2 ndays 1 n length data avg zeros n,1 avg 1 data 1.for i 2 n ao avg i-1 avg i ao alpha data i - ao. is close, but not quite equal to. alpha 2 ndays 1 avg filter alpha, 1 alpha-1 , data, data 1.for roughly the first ndays of avg.-----Original Message----- From Francesco Potort mailto hidden email Sent Wednesday, May 12, 2010 11 22 PM To hidden email. Cc Octave-ML James Sherman Jr Subject Re vectorized moving average. Your filter code below works just fine when compared to what I had been doing, except for a number of initial days, due to what values are assumed in negative time I had been using the following code ndays is the number of days to be used when computing the exponential moving average of data data is a column vector data repmat data 1 , ndays, 1 data repeat data 1 ndays times at the beginning of data for negative time values alpha 2 ndays 1 n length data avg zeros n,1 avg 1 data 1 The above instruction is all you need to invent past memory for negative values You should do the same for the filter function, but I could not say how to do it offhand for i 2 n ao avg i-1 avg i ao alpha data i - ao endfor trim off run-in period for negative time values longma longma lmadays 1 end I don t understand the above instruction What is longma For small values of ndays, the number of initial days wh ere there s a discrepancy with your filter implementation is minimal, but for larger values of ndays, the number of initial days of discrepancy grows obviously, due to the nature of an exponential MA having a long-tail memory Note, I add similar negative time values to the front of the vector when using filter as well I m just not sure what is the convention when it comes to calculating exponential moving averages for points in data where ndays reaches back into negative time Thanks again -- Francesco Potort ricercatore Voice 39 050 315 3058 op 2111 ISTI - Area della ricerca CNR Fax 39 050 315 2040 via G Moruzzi 1, I-56124 Pisa Email hidden email entrance 20, 1st floor, room C71 Web. So, this bugged me, so I looked a bit at the filter function, and I think I found where the mistake was in my initial suggestion The initial condition vector has to do with the internal states of the filter not the negative time outputs of the filter at least not directly , so to get what I think is exactly what your code with the for loop, the filter line should be. avg filter alpha, 1 alpha-1 , data, data 1 1-alpha. It is rather unintuitive why the 1-alpha term needs to be there, and I don t know if there s much interest in it, but it shouldn t be that hard probably I just need to crack open my signals and systems book to write a function to calculate the those initial conditions that the filter function expects just giving the outputs and inputs from negative time. On Thu, May 13, 2010 at 8 38 PM, Tim Rueth hidden email wrote The last instruction with longma should have read avg avg n 1 end which effectively trims off the computed values from negative time But, as you say, it looks like I didn t need to do this because the history is completely captured in avg 1 data 1 , so no need to compute a run-in time Thanks Francesco. Sherman had found that I can set the initial condition by specifying a 4th parameter in filter equal to the first data point I tried this, and got very similar but no t quite exact results when compared to the for-loop below with no negative time values But this small difference dissipated within ndays and isn t a big deal Thanks Sherman. In summary, to calculate the exponential moving average of data for ndays , the following code. alpha 2 ndays 1 n length data avg zeros n,1 avg 1 data 1.for i 2 n ao avg i-1 avg i ao alpha data i - ao. is close, but not quite equal to. alpha 2 ndays 1 avg filter alpha, 1 alpha-1 , data, data 1.for roughly the first ndays of avg.

Comments