Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Create a dataframe with random numbers in each column

Tags:

I have this simulation of 1000 random numbers:

a <-sample(0:1, 1000, rep = TRUE) 

What I want is a data frame of ten columns, where the values of each column are generated like a.

For example:

id  Column 1    Column2 .........Column 10  1   1                              1  2   0                              1  3   1                  0      0      .      .   1000 1                              1  
like image 874
CreamStat Avatar asked Oct 14 '13 01:10

CreamStat


1 Answers

You are looking for replicate:

data.frame(replicate(10,sample(0:1,1000,rep=TRUE))) 

These are the top few rows:

  X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 1  1  1  0  1  0  0  1  1  1   0 2  0  0  0  1  0  1  0  0  1   0 3  0  1  1  1  1  0  1  1  1   1 4  0  0  0  1  1  1  1  1  1   0 5  1  0  1  0  1  1  0  1  1   0 6  0  1  1  1  1  1  0  1  1   1 

If you do the same command without wrapping it in data.frame(), you will have a matrix. Matrices are faster to work with, so you might want to investigate whether they are suitable for your problem.

like image 169
Frank Avatar answered Sep 22 '22 03:09

Frank