2013-07-15 3 views
0

일부 계산 후에 하나의 날짜와 하나의 값을 목록에 저장하는 for 루프가 있습니다. 나는 두 개의 열이 테이블 (날짜 값)를 만들 싶습니다하지만 난 목록에서 값을 추출 할 때 날짜 형식으로 보존 할 수 없습니다목록에서 R을 추출 할 때 형식을 보존 할 때

n <- 5 

x <- factor(1:3,levels=1:3,labels=c('a','b','c')) 
dates <- as.Date(c('2000-01-01','2001-01-01','2002-01-01')) 

mylist <- list() 

for (i in 1:n) { 

    #Some operations 

    mylist[[i]] <- list(sample(dates,1),as.numeric(sample(x,1))) 

} 

z <- do.call(cbind,mylist) 

답변

0

당신은 하나에 데이터 구조를 변경해야을 그 실제로 다른 데이터 유형 (즉, 데이터 프레임)와 함께 다음 rbind 그들을 막을 수 있습니다

for (i in 1:n) { 

    #Some operations 

    mylist[[i]] <- data.frame(sample(dates,1),as.numeric(sample(x,1))) 

} 

z <- do.call(rbind,mylist) 

코드의 문제는 cbind 작업이 rbind의 기본 동작 인 (A matrixlist을 강요이었다/cbind). ne 데이터 유형.

+0

감사합니다.'list'도 다른 데이터 유형을 처리 할 수 ​​있습니다. – nopeva

+0

네,하지만 문제는 'cbind'를 통해 강요 할 때 발생합니다. 이것은 그것을 '매트릭스'로 변환합니다. 'mylist'가 무엇인지'do.call'이 무엇을하는지보십시오. – Henrik

관련 문제