Statystyka, prognozowanie, ekonometria, data mining Strona Główna
Reklama pqstat.pl
Statystyka, prognozowanie, ekonometria, data mining
Forum miłośników statystyki - Portal Statystyczny

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  Chat   Regulamin  Kadra forum
PORTAL STATYSTYCZNY
 Ogłoszenie 
FORUM STATYSTYCZNE MA JUŻ 10 LAT

Znasz statystykę lub ekonometrię, metody prognozowania, data mining i chcesz pomóc w rozwoju forum statystycznego ?
Pisz na: administrator(małpa)statystycy.pl

Rozpoczął swoją działalność portal statystyczny - masz pomysł na jego rozwój ?

Drogi forumowiczu! Zanim napiszesz posta zapoznaj się z regulaminem forum i przedstaw się
The International Year of Statistics (Statistics2013) Smarter Poland Portal statystyczny

Poprzedni temat «» Następny temat

Tagi tematu: biblioteki r, funkcja rexp, funkcja rnorm, grupa uzytkownikow r, pakiety r, program r

Przesunięty przez: mathkit
2015-03-23, 16:03
[R] Generowanie liczb pseudolosowych - rnorm (), rexp()
Autor Wiadomość
bulva 
Podporucznik


Pomógł: 6 razy
Posty: 205
Skąd: Zgierz
Wysłany: 2010-04-25, 23:05   [R] Generowanie liczb pseudolosowych - rnorm (), rexp()

Hej,
Czy macie jakieś pomysły jak poprawić/ulepszyć/przyspieszyć poniższy kod, generujący liczby pseudolosowe. Na ogień wziąłem rozkład U(0,1) (czyli w zasadzie po prostu liczby losowe), rozkład wykładniczy i normalny. Zwłaszcza z tym ostatnim mam problemy, jak to napisać wektorowo?

Kod:

#congruential random numbers generator:
Runif<-function(N, x0=unclass(Sys.time()), m=2^31-1, b=7^5)
{
random.seed<-x0
X<-rep(NA,N)
    for (j in 1:N)
    {
    random.seed <- (b * random.seed) %% m
    X[j] <- random.seed / m
    }
return(X)
}

#check
Runif(N=10,x0=2, m=7,b=3)

#exponential distribution
# inverse transformation method
Rexp<-function(N)
{   
U=Runif(N)
X=-log(U)     #transforms of uniforms to exp
return(X)
}

#check
Rexp(10)

#random normal (rejection/acceptance method)
Rnorm<-function(N=100)
{
x<-rep(NA,N)
i=0
while (is.na(sum(x))==T)
    {
y<-rexp(1)
u<-runif(1)
    if( exp(-(y-1)^2/2)>=u )
        {
        coin <- runif(1)
        if (coin>0.5)  x[i]=y else x[i]=-y
        i=i+1
        }
    }
return(x)
}

Rnorm(10)
Ostatnio zmieniony przez mathkit 2015-04-10, 18:13, w całości zmieniany 3 razy  
 
     
Google

Wysłany:    Reklama google.

 
 
bstq 
Chorąży


Pomógł: 9 razy
Posty: 103
Skąd: Warszawa
Wysłany: 2010-04-26, 22:20   

po co pisac cos co jest juz napisane ?:)
The Normal Distribution
rnorm(n, mean = 0, sd = 1)

rnorm generates random deviates.

rexp(n, rate = 1)
 
     
bulva 
Podporucznik


Pomógł: 6 razy
Posty: 205
Skąd: Zgierz
Wysłany: 2010-04-26, 22:53   

Żeby się czegoś nauczyć.
 
     
MK 
Podporucznik


Pomógł: 29 razy
Posty: 240
Skąd: Warszawa
Wysłany: 2010-04-26, 23:11   

Tak czy inaczej powyższa uwaga jest trafna, najlepiej przejrzeć kod funkcji, które już są.
 
     
Kamil.l 
Szeregowy


Posty: 2
Skąd: Gdańsk
Wysłany: 2013-01-28, 14:05   [R] ograniczenie funkcji rnorm

Witam.
Przepraszam, jeśli powtarzam temat, ale na gwałt szukam funkcji ograniczającej funkcję rnorm.
Otóż potrzebuje wygenerować macierz o rozkładzie normalnym o 100 elementach, średniej 90 i odchyleniu 10, ale tak żeby każdy element większy niż 100 był zaokrąglany w dół do 100. Tak żeby przy powyższych założeniach żaden element nie był większy niż 100.
Z góry dziękuję za pomoc.
 
     
piotrek 
Podporucznik


Pomógł: 13 razy
Posty: 198
Skąd: b.d.
Wysłany: 2013-01-28, 18:46   

Np. (dla wektora):
Kod:
a<-rnorm(100, mean=90, sd=10)
a[a>100]<-100
 
     
Kamil.l 
Szeregowy


Posty: 2
Skąd: Gdańsk
Wysłany: 2013-01-29, 10:16   

No i piękne dzięki
 
     
CzarnyBambo 
Szeregowy


Posty: 1
Skąd: Katowice
Wysłany: 2013-08-08, 09:15   

a jakby to wyglądało dla macierzy AxB, która ma 100 wierszy i 10 kolumn? Średnia 90, odchylenie 10?

Z góry dzięki
_________________
Routery Cisco
 
     
piotrek 
Podporucznik


Pomógł: 13 razy
Posty: 198
Skąd: b.d.
Wysłany: 2013-08-08, 17:31   

Np. tak:
Kod:
a <- matrix(rnorm(1000, mean=90, sd=10),100, 10)
a[a>100]<-100
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych zakładek(IE)
Wersja do druku

Skocz do:  

Podobne Tematy
Temat Autor Forum Odpowiedzi Ostatni post
Brak nowych postów Przyklejony: Generowanie liczb o rozkladzie wykładniczym
s314ryt Testowanie hipotez statystycznych 2 2008-05-19, 00:01
s314ryt
Brak nowych postów Przyklejony: Generowanie rozkładu normalnego 2D
stockfish Teoria i rachunek prawdopodobieństwa 5 2010-01-18, 18:22
MK
Brak nowych postów Przyklejony: generator ciągu liczb
jest gdzieś w necie ?
jabol Teoria estymacji 1 2012-02-06, 18:32
Crunchy
Brak nowych postów Przyklejony: [R] Mocne Prawo Wielkich Liczb
leszczuniuuu Biblioteki R, Pakiety R 4 2009-12-14, 19:42
MK
Brak nowych postów Przyklejony: Słabe prawo wielkich liczb dla zmiennych zależnych
pawelek84 Teoria i rachunek prawdopodobieństwa 0 2007-11-12, 16:26
pawelek84

Ideą przyświecającą istnieniu forum statystycznego jest stworzenie możliwości wymiany informacji, poglądów i doświadczeń osób związanych ze statystyką, mierzenie się z różnego rodzaju problemami statystycznymi i aktuarialnymi. Poruszane problemy: Statystyka w badaniach sondażowych rynku, metody reprezentacyjne, Teoria i rachunek prawdopodobieństwa, statystyka opisowa, teoria estymacji, testowanie hipotez statystycznych, ekonometria, prognozowanie, metody data mining.
Copyright (C) 2006-2015 Statystycy.pl
Powered by phpBB modified by Przemo © 2003 phpBB Group
Strona wygenerowana w 0,34 sekundy. Zapytań do SQL: 22