Tuesday, October 11, 2016

Help Bewegende Gemiddelde Matlab

bewegende gemiddelde Hi Steve Amphlett, baie dankie vir jou antwoord. Wel, ek het 'n stroom van data en ek wil graag die data elke 60 sekondes Ek hoef nie die venster grootte wat ek nodig het om die venster vas te hou hervorm gemiddelde. Byvoorbeeld: Ek het hierdie stel data: Tyd PatientIndex 11:36:34 0,83741 11:36:35 0,83741 11:36:36 1,07294 11:36:37 1,18611 11:36:38 1,18611 11:36:39 1,18611 11:36 : 40 1,32703 11:36:41 1,32703 11:36:42 1,32703 11:36:43 1,32703 11:36:44 1,32703 11:36:45 1,32703 11:36:46 1,32703 11:36:47 1,32703 11:36:48 1,32703 11:36:49 1,32703 11:36:50 1,32703 11:36:51 1,32703 11:36:52 1,32703 11:36:53 1,32703 11:36:54 1,49615 11:36:55 1,54860 11:36:56 1,54860 11 : 36: 57 1,54860 11:36:58 1,54860 11:36:59 1,54860 11:37:00 1,54860 11:37:01 1,54860 11:37:02 1,54860 11:37:03 1,54860 11:37:04 1,49615 11:37 : 05 1,49615 11:37:06 1,49615 11:37:07 1,49615 11:37:08 1,49615 11:37:09 1,49615 11:37:10 1,49615 11:37:11 1,49615 11:37:12 1,49615 ek nodig het om 'n gemiddelde PatientIndex elke 60 sekondes Ek hoop ek het myself duidelik gemaak. Voel asseblief vry om my te kontak vir enige verdere vrae. Siek vorentoe kyk vir jou antwoord Ek hoop jy kan my help met hierdie. Dankie by voorbaat, Sam het geskryf: GT GT GT Hi Steve Amphlett, baie dankie vir jou antwoord. Wel, ek het 'n GT stroom van data en ek wil graag die data elke 60 GT sekondes GT ek dit nie nodig om die venster grootte wat ek nodig het om die vaste venster GT hou hervorm gemiddelde. Byvoorbeeld: Ek het hierdie stel data: GT ltsnip, die data GT ek nodig het om 'n gemiddelde PatientIndex elke 60 sekondes Ek hoop ek het GT myself duidelik gemaak. So jy wil jou amonut van data te verminder van die een waarde per sekonde na een gemiddelde waarde per minuut Indien wel youd so iets te doen: data van jou data N oordek (lengte (data) / 60) Nommer van gemiddeldes datareshape (data, 6, n) Toe sy net 'n geval van die werk op die kolomme. Byvoorbeeld: Jy kan nanmean () van die statistieke toolbox gebruik om die middel te kry: meansnanmean (data) getoets nie - ek hoef nie hierdie TB en iets om Nan uit die slegte waardes: data) gt12 plekke van gt20 Nans middel (Nans ) nan Hi Steve Amphlett, baie dankie vir jou antwoord. Een ander vraag hoe sou ek in staat wees om 'n grafiek van PatientIndex plot teen tyd. Jammer dat ek nie te vertroud is met Matlab D. w.s. hoe om trek die volgende: Tyd PatientIndex 11:36:34 0,83741 11:36:35 0,83741 11:36:36 1,07294 11:36:37 1,18611 11:36:38 1,18611 11:36:39 1,18611 11:36:40 1,32703 11:36:41 1,32703 11:36:42 1,32703 11:36:43 1,32703 11:36:44 1,32703 11:36:45 1,32703 11:36:46 1,32703 11:36:47 1,32703 11:36:48 1,32703 11: 36:49 1,32703 11:36:50 1,32703 11:36:51 1,32703 11:36:52 1,32703 11:36:53 1,32703 11:36:54 1,49615 11:36:55 1,54860 11:36:56 1,54860 11:36: 57 1,54860 Siek vorentoe kyk vir jou antwoord. Dankie by voorbaat, het Hi Steve ek jou pad probeer maar vir een of ander rede is dit didnt werk ek is nie seker of ek iets verkeerd gedoen het. Wel, ek het 'n kode geskryf en ek wil hê jy moet dit na te gaan en te kyk of sy ok en dit doen die gemiddelde korrek meer as 60 sekondes. FID fopen (Test. txt, r) in fscanf (FID, f 1, INF.) t (1. lengte (in)) N 60 if (isempty (in)) (N LT 0) disp (sprintf (SlidingAvg: ( fout) leë insette data of N nul.)) terugkeer as (N 1) in plot (t. uit) xlabel (Tyd (sek)) ylabel (Pasiënt-indeks (BSI)) titel (BioSign0004 PasientID 0126 17/10/2006 ) terugkeer einde as as (N GT (2 (NX - 1))) uit nanmean (in) kinders (grootte (in)) terugkeer eindig as uit nulle (grootte (in)) Nans som (in want ek 1. NX, As ((i - m) Dit 1) ((im) Dit NX) uit (i) nanmean (in (1. im)) elseif ((i - m) gt 1) ((im) Dit NX) uit (i ) nanmean (in (i -. m im)) elseif ((i - m) gt 1) ((im) GT NX) uit (i) nanmean (in (i -. m NX)) elseif ((i - m ) Dit 1) ((im) GT NX) uit (i) nanmean (in (1. NX)) elseif (Nans GT 12) uit (i) nanmean (in (Nans)) einde as einde want ek plot (t. uit) xlabel (Tyd (sek)) ylabel (Pasiënt-indeks (BSI)) titel (BioSign0004 PasientID 0126 17/10/2006) jy kan dink jou lys as drade wat jy geboekmerk. Jy kan etikette, skrywers, drade te voeg, en selfs resultate aan jou lys te soek. Op hierdie manier kan jy maklik die spoor van onderwerpe wat jy belangstel in. Om jou lys te sien hou, kliek op die quotMy Newsreaderquot skakel. Om items na jou horlosie lys voeg, kliek op die quotadd om listquot skakel aan die onderkant van 'n bladsy te sien. Hoe kan ek 'n item by te voeg aan my horlosie lys Soek Om soekkriteria voeg tot jou lys, soek vir die presiese term in die soekkassie. Klik op die quotAdd hierdie soektog na my horlosie listquot skakel op die resultate bladsy. Jy kan ook 'n tag toe te voeg tot jou lys deur te soek vir die tag met die richtlijn quottag: tagnamequot waar merkernaam is die naam van die etiket wat jy wil om te kyk. Skrywer 'n skrywer by jou horlosie lys, gaan na die skrywers profiel bladsy en klik op die quotAdd hierdie skrywer om my horlosie listquot skakel aan die bokant van die bladsy. Jy kan ook 'n skrywer by jou horlosie lys deur te gaan na 'n draad wat die skrywer het gepos word aan en kliek op die quotAdd hierdie skrywer om my horlosie listquot skakel. Jy sal in kennis gestel word wanneer die skrywer maak 'n pos. Draad 'n draad om jou horlosie lys te voeg, gaan na die draad bladsy en klik op die quotAdd hierdie draad om my horlosie listquot skakel aan die bokant van die bladsy. Oor Nuusgroepe, News Readers en MATLAB Sentraal Wat is nuusgroepe Die groepe is 'n wêreldwye forum wat oop is vir almal is. Nuusgroepe word gebruik om 'n groot verskeidenheid onderwerpe bespreek, maak aankondigings, en handel lêers. Besprekings is gestruktureerde, of gegroepeer in 'n manier wat jou toelaat om 'n gepos boodskap en al sy antwoorde in chronologiese volgorde te lees. Dit maak dit maklik om die draad van die gesprek te volg, en om whatrsquos reeds gesê sien voordat jy jou eie antwoord te plaas of 'n nuwe plaas. Nuusgroep inhoud versprei deur bedieners gehuisves word deur verskeie organisasies op die internet. Boodskappe uitgeruil en bestuur met behulp van oop-standaard protokolle. Geen enkele entiteit ldquoownsrdquo die nuusgroepe. Daar is duisende nuusgroepe, wat elk 'n enkele onderwerp of area van belang. Die MATLAB Sentraal nuusleser poste en uitstallings boodskappe in die comp. soft-sys. matlab nuusgroep. Hoe kan ek lees of pos aan die nuusgroepe Jy kan die geïntegreerde nuusleser by die MATLAB Sentraal webwerf gebruik om te lees en post boodskappe in hierdie nuusgroep. MATLAB Sentrale word aangebied deur MathWorks. Boodskappe gepos deur die MATLAB Sentraal nuusleser gesien word deur almal gebruik van die groepe, ongeag hoe hulle toegang tot die groepe. Daar is verskeie voordele aan die gebruik van MATLAB Sentraal. Een rekening Jou MATLAB Sentraal rekening is gekoppel aan jou MathWorks Rekening vir 'n maklike toegang. Gebruik die e-posadres van jou keuse Die MATLAB Sentrale News Reader kan jy 'n alternatiewe e-pos adres as jou boodskap adres definieer, te vermy warboel in jou primêre posbus en die vermindering van spam. Spam beheer Meeste nuusgroep spam gefiltreer deur die MATLAB Sentrale News Reader. Tagging Boodskappe kan gemerk met 'n toepaslike etiket deur 'n aangemelde gebruiker. Tags kan gebruik word as sleutel word om spesifieke lêers van belang vind, of as 'n manier om jou geboekmerk plasings kategoriseer. Jy kan kies om ander toelaat om jou Tags te sien, en jy kan othersrsquo tags sowel as dié van die gemeenskap in sy geheel sien of te soek. Tagging bied 'n manier om beide die groot tendense en die kleiner, meer onduidelik idees en programme te sien. Watch lyste opstel van horlosie lyste kan jy in kennis gestel word van updates gemaak om plasings gekies deur die skrywer, draad, of enige search veranderlike. Jou horlosie lys kennisgewings kan gestuur word per e-pos (daagliks verteer of onmiddellike), vertoon in My nuusleser, of gestuur via RSS feed. Ander maniere om toegang te verkry tot die nuusgroepe Gebruik 'n nuusleser deur jou skool, werkgewer, of die internet diensverskaffer Pay vir nuusgroep toegang van 'n kommersiële verskaffer Gebruik Google Groepe Mathforum. org bied 'n nuusleser met toegang tot die comp. soft sys. matlab nuusgroep Doen jou eie bediener. Vir tipiese instruksies, sien: www. slyck / ngpage2 Kies Jou CountryDocumentation tsmovavg uitset tsmovavg (tsobj, s, lag) gee terug Die eenvoudige bewegende gemiddeld vir finansiële tydreekse voorwerp, tsobj. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (vektor, s, lag, dowwe) gee terug Die eenvoudige bewegende gemiddelde vir 'n vektor. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (tsobj, e, timeperiod) gee terug Die eksponensiële geweegde bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1). uitset tsmovavg (vektor, e, timeperiod, dowwe) gee terug Die eksponensiële geweegde bewegende gemiddelde vir 'n vektor. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. (2 / (timeperiod 1)). uitset tsmovavg (tsobj, t, numperiod) gee terug Die driehoekige bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (vektor, t, numperiod, dowwe) gee terug Die driehoekige bewegende gemiddelde vir 'n vektor. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (tsobj, w, gewigte) gee terug Die geweegde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (vektor, w, gewigte, dowwe) gee terug Die geweegde bewegende gemiddelde vir die vektor deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (tsobj, m, numperiod) gee terug Die gemodifiseerde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. uitset tsmovavg (vektor, m, numperiod, dowwe) gee terug Die gemodifiseerde bewegende gemiddelde vir die vektor. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. dowwe 8212 dimensie te bedryf saam positiewe heelgetal met waarde 1 of 2 Dimension te bedryf saam, wat as 'n positiewe heelgetal met 'n waarde van 1 of 2. dowwe is 'n opsionele insette argument, en as dit nie gebruik word as 'n inset, die verstek waarde 2 word aanvaar. Die standaard van dowwe 2 dui op 'n ry-georiënteerde matriks, waar elke ry is 'n veranderlike en elke kolom is 'n waarneming. As dowwe 1. die insette is veronderstel om 'n kolomvektor of-kolom-georiënteerde matriks, waar elke kolom is 'n veranderlike en elke ry 'n waarneming wees. e 8212 aanwyser vir eksponensiële bewegende gemiddelde karakter vektor Eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod is die tydperk van die eksponensiële bewegende gemiddelde. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n tydperk van 10 eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1) timeperiod 8212 Lengte van tyd positiewe getal Kies Jou CountryCreated op Woensdag 8 Oktober, 2008 20:04 Laas Opdateer op Donderdag, Maart 14, 2013 01:29 Geskryf deur Batuhan Osmanoglu Hits: 38887 bewegende gemiddelde in Matlab Dikwels vind ek myself in die behoefte van die gemiddeld van die data wat ek het om die geraas te verminder 'n bietjie. Ek het n paar funksies te doen presies wat ek wil hê, maar matlabs gebou in filter funksie werk redelik goed sowel. Hier Siek skryf oor 1D en 2D gemiddeld van data. 1D filter kan verwesenlik word deur die filter funksie. Die filter funksie vereis ten minste drie insette parameters: die teller koëffisiënt vir die filter (b), die deler koëffisiënt vir die filter (a), en die data (X) natuurlik. 'N loop gemiddelde filter kan gedefinieer word deur eenvoudig: Vir 2D data kan ons die Matlabs filter2 funksie gebruik. Vir meer inligting oor hoe die filter werk, kan jy tik: Hier is 'n vinnige en vuil implementering van 'n 16 deur 16 bewegende gemiddelde filter. Eerstens moet ons die filter te definieer. Aangesien al ons wil hê, is gelyk bydrae van alle bure kan ons net gebruik om die kinders funksie. Ons verdeel alles met 256 (1616), aangesien ons nie wil hê dat die algemene vlak (amplitude) van die sein verander. Om die filter kan ons net die volgende Hier sê van toepassing is die resultate vir fase van 'n Kong interferogram. In hierdie geval Range is in Y-as en Azimuth is gekarteer op X-as. Die filter was 4 pixels wyd in Range en 16 pixels wyd in Azimuth. Teken SearchUsing MATLAB, hoe kan ek die 3-daagse bewegende gemiddelde van 'n spesifieke kolom van 'n matriks en voeg die bewegende gemiddelde op daardie matriks ek probeer om die 3-daagse bewegende gemiddelde van onder bereken op die top van die matriks. Ek het my kode voorsien: Gegewe die volgende matriks A en masker: Ek het probeer die implementering van die conv opdrag maar Ek ontvang 'n fout. Hier is die conv opdrag Ek het probeer om te gebruik op die 2de kolom van matriks A: Die uitset Ek verlang word in die volgende matriks: Indien u enige voorstelle, sou ek dit baie waardeer. Dankie vir kolom 2 van matriks A, ek berekening van die 3-daagse bewegende gemiddelde soos volg en die plasing van die resultaat in kolom 4 van matriks A (Ek herdoop matriks n as 39desiredOutput39 net ter illustrasie). Die 3-dag gemiddeld van 17, 14, 11, is 14 die 3-dag gemiddeld van 14, 11, 8 is 11 die 3-dag gemiddeld van 11, 8, 5 is 8 en die 3-dag gemiddeld van 8, 5, 2 is 5. Daar is geen waarde in die onderste 2 rye vir die 4de kolom omdat die berekening vir die 3-daagse bewegende gemiddelde begin aan die onderkant. Die 39valid39 uitset sal nie gewys word tot ten minste 17, 14, en 11. Hopelik sal hierdie sin uitvoering maak Aaron 12 Junie 13 by 01:28 1 Antwoord In die algemeen is dit sal help as jy die fout sal wys. In hierdie geval jy doen twee dinge verkeerd: Eerste het jou konvolusie te verdeel deur drie (of die lengte van die bewegende gemiddelde) Tweedens, let op die grootte van c. Jy kan nie net pas c in 'n. Die tipiese manier om 'n bewegende gemiddelde sou wees om dieselfde te gebruik, maar dit nie die geval is lyk wat jy wil hê. In plaas jy gedwing word om 'n paar lyne gebruik: Dokumentasie Object Spaar en laai saveObjectImpl definieer wat eiendom en die staat waardes word gestoor in 'n mat-lêer wanneer jy bel bespaar op daardie voorwerp. As jy nie 'n saveObjectImpl metode vir jou stelsel objekklas hoef te definieer, word slegs openbare kuddes of kuddes met die DiscreteState kenmerk gered. Slaan die toestand van 'n voorwerp slegs indien die voorwerp is gevries. Wanneer jy die gered voorwerp, die voorwerp vragte in daardie geslote staat te laai. In hierdie stelsel voorwerp, is die filter koëffisiënte gered word as die voorwerp is gevries. loadObjectImpl definieer wat Stelsel eiendom en die staat voorwerp waardes gelaai wanneer jy 'n mat-lêer te laai. loadObjectImpl moet ooreenstem met jou saveObjectImpl om te verseker dat al gered eienskappe en data word gelaai. Let wel: Jy moet toegang hê beskerm vir hierdie metode stel. Stelsel voorwerp Gebruik in MATLAB Hierdie voorbeeld gebruik die stelsel voorwerp om geraas te verwyder uit 'n lawaaierige pols volgorde. Die lengte van die bewegende gemiddelde filter is 30 monsters. As jy met behulp van die gedefinieerde dspdemo. MovingAverageFilter. vervang daardie naam vir MovingAverageFilter in die klas konstruktor, byvoorbeeld movingAverageFilter dspdemo. MovingAverageFilter (WindowLength, 30). Simulink Aanpassing metodes wat jy nodig het om 'n paar metodes definieer om in staat wees om die stelsel voorwerp in 'n Simulink MATLAB System blok. Hierdie metodes is nie nodig as jy die stelsel voorwerp net in MATLAB te gebruik. getOutputSizeImpl gee die groottes van elke uitset poort. Vir System voorwerpe met een insette en een uitset en waar jy wil hê dat die toevoer en afvoer groottes om weer dieselfde wees nie, het jy nie nodig het om hierdie metode te implementeer. In die geval van MovingAverageFilter. daar is 'n toevoer en afvoer en die grootte van elke is dieselfde. Daarom, verwyder hierdie metode van die klas definisie van MovingAverageFilter. getDiscreteStateSpecificationImpl gee die grootte, tipe data, en die kompleksiteit van 'n eiendom. Hierdie eiendom moet 'n diskrete-staatseiendom wees. Jy moet hierdie metode definieer as jou stelsel voorwerp het diskrete staatsbeheerde eienskappe en word gebruik in die MATLAB System blok. In hierdie voorbeeld is die metode wat gebruik word om die eiendom staat definieer. Kies jou land


No comments:

Post a Comment