2013-03-21 82 views
0
x<-rnorm(5000,5,3) 

如何將x分成500組,每組有10個數字?如何將向量拆分爲R中的小組?

+0

如果拆分x轉換成500組,你將不必在每5個號碼。而且,你已經嘗試過了什麼? – juba 2013-03-21 11:15:26

+0

我很抱歉,這是十個不是五個。 – 2013-03-21 11:24:37

回答

4

回答#1:

x<-rnorm(5000,5,3) 
y<-matrix(nr=500,nc=10) 
y[]<-x 

回答#2: 跳過第一步,只是直接創建矩陣。

y<-matrix(rnorm(5000,5,3),nr=500,nc=10) 
+0

'y []'是什麼意思,'[]'是空白的。 – 2013-03-21 11:31:09

+2

這確保我填充現有對象'y'的內容(在這種情況下是一個矩陣),而不是用'x'替換對象。如果您執行'y <-x'',則y變成'x'的副本。 – 2013-03-21 12:17:56

0

你是正在尋找這樣的事情:

# create a vector of group labels 

group <- rep(sample(1:500,replace=F,size=500),10) 
group.name <- paste("group",as.character(group),sep=" ") 

# create a dataframe of groups and corresponding values 
df <- data.frame(group=group.name,value=rnorm(5000,5,3)) 

# check the dataframe 
str(df) 
'data.frame': 5000 obs. of 2 variables: 
$ group: Factor w/ 500 levels "group 1","group 10",..: 271 115 404 252 138 243 375 308 434 16 ... 
$ value: num 8.55 10.14 3.71 8.79 4.17 ... 

head(df) 
     group  value 
1 group 342 8.547406 
2 group 201 10.135465 
3 group 462 3.713305 
4 group 325 8.786934 
5 group 222 4.171373 
6 group 317 3.478123