統計解析R たぶんpart3くらい (587レス)
統計解析R たぶんpart3くらい http://mevius.5ch.net/test/read.cgi/tech/1340339592/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
278: デフォルトの名無しさん [] 2019/06/09(日) 01:58:16.45 ID:wNZZZJ2C [so]{#so}: [Showing existence of a diffeomorphism preserving volume forms](https://math.stackexchange.com/questions/2731058) 一次元だと積分表が使えるので絵を描いてみる [so-1]{#so-1} ``` {r} big_data = list (`%>%` = purrr::`%>%`, add = rlist::list.append , size = length, null = NULL, true = T, false = F, na = NA); big_data = with (c (big_data, xa = 0, sa = 0.1, db = 1, sbm = 0.3 , sbp = 0.2), { pa = function (x) { dnorm (x, mean = xa, sd = sa); }; pb = function (x) { 0.5 * (dnorm (x, mean = - db, sd = sbm) + dnorm (x , mean = db, sd = sbp)); }; Pa = function (x) { pnorm (x, mean = xa , sd = sa); }; Pb = function (x) { 0.5 * (pnorm (x, mean = - db, sd = sbm) + pnorm (x, mean = db, sd = sbp)); }; ra = function (n) { rnorm (n , mean = xa, sd = sa); }; rb = function (n) { sample (c (rnorm (n , mean = - db, sd = sbm) , rnorm (n, mean = db, sd = sbp)), n); }; x = 3 * seq (- 1, 1, len = 1e+3); ya = pa (x); yb = pb (x); plot (range (x) , range (ya, yb), type = 'n'); lines (x, ya, col = 'blue'); lines (x, yb , col = 'red'); add (big_data, pa = pa, pb = pb, ra = ra, rb = rb, Pa = Pa , Pb = Pb); }); no_plot = function (text = 'space') { plot (c (0, 1), c (0 , 1), ann = F, bty = 'n', type = 'n', xaxt = 'n', yaxt = 'n'); text ( x = 0.5, y = 0.5, text);}; ``` http://mevius.5ch.net/test/read.cgi/tech/1340339592/278
279: デフォルトの名無しさん [] 2019/06/09(日) 01:59:10.30 ID:wNZZZJ2C 青の分布を赤の分布に連続的に変形させる [so-2]{#so-2} ``` {r} big_data = with (c (big_data, nx = 2e+3, nt = 1e+3, alim = 2, blim = 4), { vec = function (x, t) { (Pa (x) - Pb (x)) / ((1 - t) * pa (x) + t * pb (x)); }; t = seq (0, 1, len = nt); dt = diff (t) %>% mean; x = ra (nx); x = x0 = x [which (abs (x) <= alim)]; x = purrr::map (t, function (t) { x <<- x + dt * vec (x, t); }) %>% do.call (what = rbind); draw = function (t, x, nbin = 20 , vector = null) { xlim = range (x, na.rm = true); plot ( xlim, range (t), type = 'n', main = 'trajectories', xlab = 'x', ylab = 't'); purrr::map ( sample (1 : ncol (x), 50), function (j) { x = x [, j]; if ( all ( is.finite (x))) { lines (x, t); } else { points (x, t); }; }); if ( is.function (vector)) { no_plot (); }; doit = function (ind) { t = t [ind]; x = x [ind, ]; if (is.null (nbin)) { nbin = 'scott'; }; msg = sprintf ( 'at the time %.1e', t); msg = c (msg, sprintf ('%d / %d', sum ( xlim [1] <= abs (x) & abs (x) <= xlim [2], na.rm = true), size (x))); hist (x, breaks = nbin, freq = false, xlim = xlim, main = msg); x = seq ( xlim [1], xlim [2], len = 1e+3); # lines (x, pa (x), col = 'blue'); lines (x, pb (x), col = 'red'); if (is.function (vector)) { x = seq (min ( xlim), max (xlim), len = 1e+5); plot (x, vector (t, x) %>% abs (), type = 'l', log = 'y', main = msg); }; }; for (i in c (1, size (t) / 2, size ( t))) { doit (i); } }; x = rbind (x0, x [- nrow (x), ]); x [which (blim < abs (x))] = na; fix_bin = function (x, lim) { max (sum (abs (x [nrow (x) , ]) <= lim , na.rm = true) / 50, 10) %>% as.integer (); }; draw (t, x , nbin = fix_bin (x, blim), vector = vec); add (big_data, x0 = x0, t = t , dt = dt , nt = nt, nx = nx, vec = vec, draw = draw, fix_bin = fix_bin , alim = alim, blim = blim);}); ``` http://mevius.5ch.net/test/read.cgi/tech/1340339592/279
280: デフォルトの名無しさん [] 2019/06/09(日) 02:00:21.38 ID:wNZZZJ2C 逆方向に変形させてみる [so-3]{#so-3} ``` {r} with (c (big_data), { wec = function (x, t) { - vec (x, 1 - t); }; x = rb (nx); x = x0 = x [which (abs (x) <= blim)]; x = purrr::map (t, function (t) { x <<- x + dt * wec (x, t); }) %>% do.call (what = rbind); x = rbind (x0, x [- nrow (x), ]); x [which (blim < abs (x))] = na; draw (t, x, nbin = fix_bin (x, blim), vector = wec); }); ``` おしまい http://mevius.5ch.net/test/read.cgi/tech/1340339592/280
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.023s