2016-10-25 4 views
-1

mylist이라는 목록이 있는데 헤더에는 108 개의 행이 있습니다. 나는 dataframe로 변환 시도하고 성공적으로 다음 명령을하지만, 내 목록의 각 매트릭스 (mylist)로 바뀐다는의 헤더가 나의 새로운 dataframe 안양에 ​​정의되지 않은 헤더를 유지하면서 데이터 프레임으로 목록을 변환하는 방법

df <- data.frame(matrix(unlist(mylist), nrow=108, byrow=F)) 

를 사용했다.

names(df) 

"X1" "X2" "X3" "X4" "X5" "X6" "X7" "X8" "X9" "X10" "X11" "X12" "X13" "X14" "X15" "X16" "X17" "X18" "X19" "X20" "X21" "X22" "X23" "X24" "X25" "X26" "X27" "X28" "X29" "X30" "X31" "X32" "X33" "X34" "X35" "X36" 

mylisthead(mylist[[i]])i=1이가 너무

head(mylist[[1]]) 

     RAmi   MDaf 
1 11.806405 -3.588567 
2 7.711101 -9.721415 
3 2.315104 11.217575 
4 20.372999 -2.267938 
5 22.279704 -1.668082 
6 13.57909 20.67355 



head(mylist[[2]]) 

      Tomi   Rahaf 
    1  325   -3 
    2  71   -9 
    3  2   11 
    4  20.999  -22 
    5  22   -16 
    6  139   2065 

같이 보입니다하지만 난 = 1,2,3 비슷한 일을 존재 .. ., 18

내가 원하는 것은 모두 하나의 데이터에 넣는 것이다. rame 인접. 괜찮 았지만 제목에 문제가 있습니다.

이렇게하는 방법을 이해하는 데 도움이되기를 바랍니다. 감사합니다.

+0

쇼'mylist' 또는 문제를 보여 팩스와 함께 하나의 dataframe에 모든 데이터를 입력 할 수로 dataframe을 생성하는 코드를 작성 ... – Frank

+0

나는 당신에게 그것을 보여줄 수있는 방법이 매우 길다. – rsc05

+0

문제를 설명하기에 충분히 유사한 다른 목록을 사용한다. 목록에는 "헤더"또는 "행"과 같은 것이 없으므로 예제가 없으면 사용자가 묻는 것은 명확하지 않습니다. 재현 가능한 예제를 만드는 방법에 대한 조언은 다음을 참조하십시오 : http://stackoverflow.com/a/28481250/ – Frank

답변

0

데이터 프레임 목록을 하나의 데이터 프레임으로 변환하는 데 문제가있는 것으로 보입니다. 따라서 처음부터 하나의 데이터 프레임으로 작업하는 것이 좋습니다.

예를 들어, 내 경우에는 내가 나중에 내 데이터를 분석하기 시작 그리고 원시 데이터

#data1=read.csv(file.choose(), header=F) 
data1=read.csv 

을 수입했다. 그때

# Here we are extracting the data which we wish to have 
#iterations=nrow(data1) #Check the number of rows 

listOfDataFrames <- vector(mode = "list", length = 18) # define a dataframe with length 
#mylist <- list() #create an empty list 
for (k in 0:17) 
{ 
    j=18 # from 14 i.e. switzerland this is not true anymore 
    if ((k>=14) && (k<16)) 
    { 
     f=7+j*k 
     s=3+j*k 

    } else if (k<14) 
    { 
     s=7+j*k-4 
     f=7+j*k 
    } else if (k==16) 
    { 
     f=j*k+5 
     s=f+4 
    } else if (k==17) 
    { 
     f=304 
     s=301 
    } 
    b= data1[,c(f,s)] 
    #mylist[[k+1]] <- b 
    listOfDataFrames[[k+1]]=b 
} 
#df <- data.frame(matrix(unlist(mylist), nrow=108, byrow=F)) 

에서이 나를 헤더

df=do.call("cbind", listOfDataFrames) 
head(df) 
관련 문제