Мне нужен портативный, последовательный генератор псевдослучайного числа

Из пакета dplyr вы можете использовать функции filter() и group_by() для вычисления среднего значения цены (и sd) по акциям.

Предположим, ваш набор данных df:

df %>%
   filter(Date >= input$dateRange[1] & Date <= input$dateRange[2]) %>%
   filter(Industry %in% input$industry_choices) %>%
   group_by(Industry, stock) %>%
   summarise(
       price_mean = mean(price),
       price_sd   = mean(sd)
   )

В Shiny входные данные рассматриваются как строки, иногда вам нужно будет использовать group_by_(). Например, если пользователь может выбрать переменную для группировки по: group_by_(input$grouping_choice)

5
задан Jason Punyon 27 March 2009 в 14:08
поделиться

2 ответа

Математика:: Случайный:: Автоматический модуль CPAN, реализовывая известный вихрь Мерсенна PRNG.

7
ответ дан 18 December 2019 в 13:19
поделиться

Попытайтесь использовать LFSR - Линейный Сдвиговый регистр Обратной связи.. Первая ссылка на внешние ссылки имеет все, что необходимо произвести любое число битов случайности. Хорошая вещь об этом состоит в том, что это легко реализовать и может быть сделано с помощью всей целочисленной математики.

Я использовал его с успехом на 8 051 проекте. С жемчугом это будет снимок.

Обновление:

Вот быстрая реализация жемчуга LFSR на 8 битов:

use strict;
use warnings;

use List::Util qw(reduce);
use vars qw($a $b);

print 'Taps: ', set_taps( 8, 7, 2, 1 ), "\n";
print 'Seed: ', seed_lfsr( 1 ), "\n";
print read_lfsr(), "\n" for 1..10;

BEGIN {
    my $tap_mask;
    my $lfsr = 0;

    sub read_lfsr {
        $lfsr = ($lfsr >> 1) ^ (-($lfsr & 1) & $tap_mask );

        return $lfsr;
    }

    sub seed_lfsr {
        $lfsr = shift || 0;
        $lfsr &= 0xFF;
    }

    sub set_taps {
        my @taps = @_;

        $tap_mask = reduce { $a + 2**$b } 0, @taps;

        $tap_mask >>= 1;

        $tap_mask &= 0xFF;

        return $tap_mask;
    }
}

Этот код является просто прототипом. Если бы я хотел использовать его в производстве, то я, вероятно, перенес бы его в объект и сделал бы размер регистра настраивающимся. Затем мы были бы избавлены от тех противных совместно используемых переменных.

7
ответ дан 18 December 2019 в 13:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: