2012-04-03 2 views
0

내가 할 경우 :rpy2에서 다른 값 길이를 갖는 데이터 프레임을 만드는 쉬운 방법이 있습니까?

import rpy2.robjects as R 
exampleDict = {'colum1':R.IntVector([1,2,3]), 'column2':R.FloatVector([1,2]), 'column3':R.FloatVector([1,2,3,4])} 
R.DataFrame(exampleDict) 

은 내가 행이 동일한 거리에서는 쉴드의 아니라는 오류 : "인수는 행의 수를 서로 다른 의미 : 2, 4, 3".

내가 전에 해결 한 방법은 벡터를 만들기 전에 목록을 반복하고 길이가 모두 같을 때까지 가장 긴 것보다 작은 모든 목록에 NA를 추가하는 것입니다.

서로 다른 열 길이를 갖는 rpy2를 사용하여 데이터 프레임을 만드는 쉬운 방법이 있습니까?


편집 : 나는

myparams = {'na.rm': True} 
R.DataFrame(exampleDict, **myparams) 

을 시도했지만 R.DataFrame는 하나 개의 인수를 받아들입니다.

+0

rpy 메일 링리스트에 크로스 게시하여 질문에 답변했습니다. – lgautier

답변

0

Igautier가 말했듯이, rpy 메일 링리스트에 답변되었습니다. 그것은 할 수 없습니다. 그래서 NA_Reals와 NA_Ints를 데이터 프레임을 만들기 전에 가장 큰 벡터보다 작은 벡터에 추가하는 방법을 고수하고 있습니다.

관련 문제