Как сделать логарифм бинарного распределения в R? - PullRequest
0 голосов
/ 03 марта 2020

Я новичок в R и математике.

Мы работаем с устройством для измерения мелкой пыли по размеру частиц. Прибор анализирует 0,3-10 мкм по 16 каналам. Каждый канал делится в соответствии с нормальным распределением журнала, как показано в таблице ниже.

          Lower         Upper
1           0.3          0.374
2           0.374        0.465
3           0.465        0.579
4           0.579        0.721
5           0.721        0.897
6           0.897        1.117
7           1.117        1.391
8           1.391        1.732
9           1.732        2.156
10          2.156        2.685
11          2.685        3.343
12          3.343        4.162
13          4.162        5.182
14          5.182        6.451
15          6.451        8.032
16          8.032        10

Я хочу снова настроить таблицу на 0,3-2,5 мкм. Как я могу установить интервал равномерно? Я пытался написать код, используя R, но это очень сложно.

          Lower         Upper
1           0.3          
2                   
3                   
4                   
5                   
6                   
7                   
8                   
9                   
10                  
11                  
12                  
13                  
14                  
15                  
16                       2.5

Предполагается, что форма графика нормальна для логарифма.

1 Ответ

1 голос
/ 03 марта 2020

Вы можете использовать seq, log и exp для создания таблицы с интервалом в журнале :

tt <- exp(seq(log(0.3), log(2.5), length.out=17))
data.frame(Lower=tt[-length(tt)], Upper=tt[-1])
#       Lower     Upper
#1  0.3000000 0.3425093
#2  0.3425093 0.3910422
#3  0.3910422 0.4464520
#4  0.4464520 0.5097133
#5  0.5097133 0.5819385
#6  0.5819385 0.6643980
#7  0.6643980 0.7585417
#8  0.7585417 0.8660254
#9  0.8660254 0.9887393
#10 0.9887393 1.1288415
#11 1.1288415 1.2887959
#12 1.2887959 1.4714155
#13 1.4714155 1.6799118
#14 1.6799118 1.9179517
#15 1.9179517 2.1897213
#16 2.1897213 2.5000000

или для диапазона от 0,3 до 10:

tt <- exp(seq(log(0.3), log(10), length.out=17))
data.frame(Lower=tt[-length(tt)], Upper=tt[-1])
#       Lower      Upper
#1  0.3000000  0.3735091
#2  0.3735091  0.4650301
#3  0.4650301  0.5789766
#4  0.5789766  0.7208434
#5  0.7208434  0.8974719
#6  0.8974719  1.1173797
#7  1.1173797  1.3911716
#8  1.3911716  1.7320508
#9  1.7320508  2.1564557
#10 2.1564557  2.6848527
#11 2.6848527  3.3427230
#12 3.3427230  4.1617915
#13 4.1617915  5.1815565
#14 5.1815565  6.4511948
#15 6.4511948  8.0319330
#16 8.0319330 10.0000000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...