Tuesday 17 October 2017

Flytting Gjennomsnitt Matlab Matrise


Jeg ser etter litt veiledning om bruk av CONVN for å beregne bevegelige gjennomsnitt i en dimensjon på en 3d-matrise. Jeg blir litt opptatt av å flippe kjernen under hetten og håper noen kan klare oppførselen for meg. En lignende post som fortsatt har meg litt forvirret, er her: Jeg har daglige elve - og værflytdata for et vannområde på forskjellige kildeplasser. Så matrisen er som så, dim 1 (radene) representerer hvert område dim 2 (kolonnene) representerer datoen dim 3 (sidene) representerer forskjellig type måling (elvhøyde, flyt, nedbør, etc.) Målet er å prøve å bruke CONVN til å ta et 21 dagers glidende gjennomsnitt på hvert område, for hvert observasjonspunkt for hver variabel. Som jeg forstår det, burde jeg bare kunne bruke aa kjernen, for eksempel: Jeg prøvde å spille rundt og opprettet en annen kjerne som også skulle fungere (tror jeg) og sette ker2 som: Resultatene stemmer ikke helt sammen og jeg lurer på om jeg har dimensjoner feil her for kjernen. Enhver veiledning er høyt verdsatt. BTW, du har en symmetrisk kjernen, og så flipping burde ikke ha noen effekt på konvoluttutgangen. Det du har spesifisert er en standard bevegelig gjennomsnittlig kjernekode, og så skal konvolusjon fungere for å finne det bevegelige gjennomsnittet som du forventer. men jeg er litt forvirret fordi du sa det ovenstående virker ikke ndash rayryeng 31. mai kl. 20:17 Det er helt opp til deg :). Spørsmålet du har er en gyldig (ingen ordspill ment) som reiser opp mange mennesker. Hvis du vil at den skal bli, kan jeg skrive et svar som oppsummerer det vi snakket om. Hvis du vil trekke inn slette svaret ditt, er det ikke noe problem i det hele tatt. Gi meg beskjed om hva du vil gjøre ndash rayryeng 31. mai kl. 20:39 Dømmer fra konteksten av spørsmålet ditt, har du en 3D-matrise, og du vil finne det bevegelige gjennomsnittet av hver rad uavhengig av alle 3D-stykker. Koden ovenfor skal fungere (det første tilfellet). Det gyldige flagget returnerer imidlertid en matrise hvis størrelse er gyldig i forhold til konvoluttens grenser. Ta en titt på det første punktet i innlegget du koblet til for flere detaljer. Spesielt vil de første 21 oppføringene for hver rad mangle på grunn av gyldig flagg. Dens eneste når du kommer til den 22. inngangen til hver rad, blir konvolusjonskjernen helt inne i en rad av matrisen, og fra det punktet får du gyldige resultater (ingen ordspill er ment). Hvis du ønsker å se disse oppføringene ved grensene, må du bruke det samme flagget hvis du vil opprettholde samme størrelsesmatrise som inngangen eller hele flagget (som er standard) som gir deg størrelsen på utgangen som starter fra de mest ekstreme ytre kantene, men husk at det bevegelige gjennomsnittet vil bli gjort med en haug med nuller, og derfor vil de første 21 oppføringene ikke være det du forventer uansett. Imidlertid, hvis jeg tolker det du spør, er gyldig flagg det du vil, men husk at du vil ha 21 oppføringer manglet for å imøtekomme for kantsaker. Alt i alt skal koden din fungere, men vær forsiktig med hvordan du tolker resultatene. BTW, du har en symmetrisk kjernen, og så flipping burde ikke ha noen effekt på konvoluttutgangen. Hva du har angitt, er en standard bevegelig gjennomsnittlig kjernen, og så skal konvolusjonen fungere for å finne det bevegelige gjennomsnittet som du forventer. Bruk MATLAB, hvordan kan jeg finne tre-dagers glidende gjennomsnitt av en bestemt kolonne i en matrise og legge til glidende gjennomsnitt Til den matrisen prøver jeg å beregne 3-dagers glidende gjennomsnitt fra bunn til toppen av matrisen. Jeg har oppgitt koden min: Gitt følgende matrise a og maske: Jeg har prøvd å implementere conv kommandoen, men jeg mottar en feil. Her er conv kommandoen jeg har prøvd å bruke på 2. kolonne av matrise a: Utgangen jeg ønsker er gitt i følgende matrise: Hvis du har noen forslag, vil jeg sette stor pris på det. Takk for kolonne 2 i matrisen a, beregner jeg 3-dagers glidende gjennomsnitt som følger og plasserer resultatet i kolonne 4 i matrise a (jeg omdøpt matrise a som 39desiredOutput39 bare for illustrasjon). 3-dagers gjennomsnittet av 17, 14, 11 er 14 det 3-dagers gjennomsnittet på 14, 11, 8 er 11 3-dagers gjennomsnittet av 11, 8, 5 er 8 og 3-dagers gjennomsnittet på 8, 5, 2 er 5. Det er ingen verdi i de nederste 2 radene for fjerde kolonne fordi beregningen for 3-dagers glidende gjennomsnitt begynner nederst. Den 39 ugyldige 39-utgangen vil ikke bli vist før minst 17, 14 og 11. Forhåpentligvis er dette fornuftig ndash Aaron 12. juni kl 13:28 Generelt vil det hjelpe hvis du vil vise feilen. I dette tilfellet gjør du to ting feil: Først må fellingen din divideres med tre (eller lengden på det bevegelige gjennomsnittet). For det andre, merk størrelsen på c. Du kan ikke bare passe inn i en. Den typiske måten å få et bevegelige gjennomsnitt på, ville være å bruke samme: men det ser ikke ut som du vil. I stedet er du tvunget til å bruke et par linjer: 29. september 2013 Flytte gjennomsnitt ved konvolusjon Hva er glidende gjennomsnitt og hva er det bra for Hvordan flytter gjennomsnittet gjort ved å bruke convolution Flytte gjennomsnitt er en enkel operasjon som vanligvis brukes til å undertrykke støy av en signal: vi setter verdien av hvert punkt til gjennomsnittet av verdiene i nabolaget. Med en formel: Her er x inngangen, og y er utgangssignalet, mens størrelsen på vinduet er w, skulle være merkelig. Formelen ovenfor beskriver en symmetrisk operasjon: prøvene tas fra begge sider av det aktuelle punktet. Nedenfor er et virkelighetseksempel. Det punktet som vinduet ligger faktisk er rødt. Verdier utenfor x skal være nuller: For å spille rundt og se effekten av glidende gjennomsnitt, ta en titt på denne interaktive demonstrasjonen. Slik gjøres det ved konvolusjon Som du kanskje har gjenkjent, beregner det enkle glidende gjennomsnittet likningen: i begge tilfeller skyves et vindu langs signalet og elementene i vinduet oppsummeres. Så, prøv å gjøre det samme ved å bruke konvolusjon. Bruk følgende parametre: Ønsket utgang er: Som første tilnærming, la oss prøve det vi får ved å samle x-signalet med følgende k-kjerne: Utgangen er nøyaktig tre ganger større enn den forventede. Det kan også ses at utgangsvurderingene er oppsummeringen av de tre elementene i vinduet. Det er fordi under konvolusjonen glir vinduet langs, alle elementene i det blir multiplisert med en og deretter oppsummert: yk 1 cdot x 1 cdot x 1 cdot x For å få de ønskede verdiene for y. Utgangen skal deles med 3: Ved en formel som inkluderer divisjonen: Men ville det ikke være optimal å gjøre avdelingen under konvolusjonen. Her kommer ideen ved å omplassere ligningen: Så vi skal bruke følgende k-kjerne: På denne måten vil vi få ønsket utdata: Generelt: hvis vi ønsker å gjøre bevegelige gjennomsnitt ved konvolusjon som har en vindusstørrelse på w. Vi skal bruke følgende k-kjerne: En enkel funksjon som gjør det bevegelige gjennomsnittet er: Et eksempelbruk er: Dokumentasjonsutgang tsmovavg (tsobj, s, lag) returnerer det enkle glidende gjennomsnittet for for økonomisk tidsserieobjekt, tsobj. lag viser antall tidligere datapunkter som brukes med det nåværende datapunktet ved beregning av glidende gjennomsnitt. output tsmovavg (vektor, s, lag, dim) returnerer det enkle glidende gjennomsnittet for en vektor. lag viser antall tidligere datapunkter som brukes med det nåværende datapunktet ved beregning av glidende gjennomsnitt. output tsmovavg (tsobj, e, timeperiod) returnerer det eksponentielle veide glidende gjennomsnittet for økonomisk tidsserieobjekt, tsobj. Det eksponentielle glidende gjennomsnittet er et vektet glidende gjennomsnitt, hvor tidsperioden spesifiserer tidsperioden. Eksponentielle glidende gjennomsnitt reduserer forsinkelsen ved å bruke mer vekt til de siste prisene. For eksempel veier et 10-års eksponentielt glidende gjennomsnitt den siste prisen med 18,18. Eksponentiell prosentandel 2 (TIMEPER 1) eller 2 (WINDOWSIZE 1). output tsmovavg (vektor, e, timeperiod, dim) returnerer det eksponentielle vektede glidende gjennomsnittet for en vektor. Det eksponentielle glidende gjennomsnittet er et vektet glidende gjennomsnitt, hvor tidsperioden spesifiserer tidsperioden. Eksponentielle glidende gjennomsnitt reduserer forsinkelsen ved å bruke mer vekt til de siste prisene. For eksempel veier et 10-års eksponentielt glidende gjennomsnitt den siste prisen med 18,18. (2 (tidsperiode 1)). output tsmovavg (tsobj, t, numperiod) returnerer trekantet glidende gjennomsnitt for økonomisk tidsserieobjekt, tsobj. Det trekantede glidende gjennomsnittet glatter dataene. tsmovavg beregner det første enkle glidende gjennomsnittet med vinduets bredde på taket (numperiod 1) 2. Deretter beregner det et andre enkelt glidende gjennomsnitt på første glidende gjennomsnitt med samme vindu størrelse. output tsmovavg (vektor, t, numperiod, dim) returnerer trekantet glidende gjennomsnitt for en vektor. Det trekantede glidende gjennomsnittet glatter dataene. tsmovavg beregner det første enkle glidende gjennomsnittet med vinduets bredde på taket (numperiod 1) 2. Deretter beregner det et andre enkelt glidende gjennomsnitt på første glidende gjennomsnitt med samme vindu størrelse. output tsmovavg (tsobj, w, vekter) returnerer det veide glidende gjennomsnittet for den økonomiske tidsserieobjektet, tsobj. ved å levere vekter for hvert element i det bevegelige vinduet. Lengden på vektvektoren bestemmer størrelsen på vinduet. Hvis større vektfaktorer brukes til nyere priser og mindre faktorer for tidligere priser, er trenden mer lydhør overfor de siste endringene. output tsmovavg (vektor, w, vekter, dim) returnerer vektet glidende gjennomsnitt for vektoren ved å levere vekter for hvert element i flyttingsvinduet. Lengden på vektvektoren bestemmer størrelsen på vinduet. Hvis større vektfaktorer brukes til nyere priser og mindre faktorer for tidligere priser, er trenden mer lydhør overfor de siste endringene. output tsmovavg (tsobj, m, numperiod) returnerer det modifiserte glidende gjennomsnittet for den økonomiske tidsserieobjektet, tsobj. Det endrede glidende gjennomsnittet ligner det enkle glidende gjennomsnittet. Vurder argumentet tallet for å være lag av det enkle glidende gjennomsnittet. Det første modifiserte glidende gjennomsnittet beregnes som et enkelt glidende gjennomsnitt. Etterfølgende verdier beregnes ved å legge til den nye prisen og trekke siste gjennomsnitt fra den resulterende summen. output tsmovavg (vektor, m, numperiod, dim) returnerer det modifiserte glidende gjennomsnittet for vektoren. Det endrede glidende gjennomsnittet ligner det enkle glidende gjennomsnittet. Vurder argumentet tallet for å være lag av det enkle glidende gjennomsnittet. Det første modifiserte glidende gjennomsnittet beregnes som et enkelt glidende gjennomsnitt. Etterfølgende verdier beregnes ved å legge til den nye prisen og trekke siste gjennomsnitt fra den resulterende summen. dim 8212 dimensjon for å operere langs positivt heltall med verdi 1 eller 2 Dimensjon for å operere sammen, spesifisert som et positivt helt tall med en verdi på 1 eller 2. dim er et valgfritt inngangsargument, og hvis det ikke er inkludert som en inngang, verdi 2 antas. Standard dim 2 angir en radorientert matrise, hvor hver rad er en variabel og hver kolonne er en observasjon. Hvis dim 1. inngangen antas å være en kolonnevektor eller kolonneorientert matrise, hvor hver kolonne er en variabel og hver rad en observasjon. e 8212 Indikator for eksponentiell glidende gjennomsnittskaraktervektor Eksponentiell glidende gjennomsnitt er et veid glidende gjennomsnitt, hvor tideperiod er tidsperioden for eksponentielt glidende gjennomsnitt. Eksponentielle glidende gjennomsnitt reduserer forsinkelsen ved å bruke mer vekt til de siste prisene. For eksempel veier et 10-års eksponentielt glidende gjennomsnitt den siste prisen med 18,18. Eksponentiell prosentandel 2 (TIMEPER 1) eller 2 (WINDOWSIZE 1) timeperiod 8212 Tidsperiode nonnegative heltall Velg ditt land

No comments:

Post a Comment