Excel - números aleatórios - e instruções If

1

Em "A", linhas 1-1000, eu gero números aleatórios usando RAND (). Eu quero pegar números entre dizer 1-100.

Em "B" para 1000 linhas, tenho =RAND()*(100-1)+1

Em "C" para 1000 linhas eu uso os números que eu criei em "A", então =A1*(100-1)+1

As médias em B e C são as mesmas, como esperado.

Eu só quero usar os valores para 20% do tempo, portanto, para cada uma das 1000 linhas:

Para B, eu uso =IF(A1<0.2,B1,0)
Para C, eu uso =IF(A1<0.2,C1,0)

Se eu fizer isso, as médias de cada uma das duas colunas serão muito diferentes.

Alguém pode explicar por quê?

Ambas as abordagens estão usando números aleatórios. A primeira abordagem usa dois números aleatórios diferentes (da coluna "A" e o usado no cálculo da coluna "B").

    
por NMS 24.03.2013 / 13:48

2 respostas

3

As colunas A e B têm a mesma distribuição uniforme, além da transformação linear, mas são independentes. A função de densidade de probabilidade de B (PDF) para A < 0,2 é igual ao PDF para qualquer outra seleção de A

As colunas A e C não são independentes. Na verdade, eles são completamente deterministas. Se você selecionar linhas onde A < 0,2 , você só estará selecionando linhas onde C < 20,8 . A probabilidade de encontrar um valor de C maior que 20,8 dentro dessa seleção caiu para zero. Claramente, a distribuição mudou.

Para um exemplo mais óbvio disso, considere lançar dois dados (A e B) e seu total (C). Eu esperaria ver uma média de 3,5 nas colunas A e B, e uma média de 7 na coluna C. Se desta tabela eu selecionar apenas as linhas em que o die A pousou em 1, eu ainda veria uma média de 3,5 em B (independente), mas apenas 4,5 em vez de 7 na coluna C (dependente).

    
por 24.03.2013 / 15:01
0

Para sua amostra 1 em 5 de ColumnC, em vez de escolher o valor C com base no valor A da linha correspondente (ou seja, A valores menores que 0,2), tente escolher 1 em 5 C de amostra de uma linha adjacente. Diga usar =IF(A1<0.2,C2,0) . Isso deve fornecer médias semelhantes para as duas colunas (embora =A1(100-1)+1 não esteja correto).

Em seguida, você deve ter um representante mais ou menos 1 em 5 de ColumnC em vez de apenas (aproximadamente) uma versão ampliada de valores pré-selecionados para os 20% inferiores.

Em outras palavras, a média de sua coluna B "muito diferente" (mas provavelmente antecipada, por volta de 50) é provavelmente cerca de cinco vezes a média da coluna ColumnC. Escolha 1 em 10 na base acima e seria ~ 10 vezes.

Em vez de aumentar a escala, se você quiser gerar aproximadamente 1.000 números aleatórios no intervalo de 1 a 100, poderá aplicar =RANDBETWEEN(1,100) .

    
por 28.03.2013 / 04:04