2013-01-02 6 views
4

grouped이라는 팬더 그룹의 개체가 있습니다. 나는 grouped.mean()과 다른 간단한 기능을 사용할 수는 있지만, 작동하려면 grouped.quantile()을 얻을 수 없습니다. 나는 grouped.quantile()를 실행하려고하면 다음과 같은 오류 얻을 : 나는 텍스트 레이블에 의해 그룹화하고pandas groupby 객체에 quantile을 적용하는 방법은 무엇입니까?

ValueError: ('invalid literal for float(): groupA', u'occurred at index groups') 

를, 그래서 함수는 부동 소수점으로 변환을 시도하는 이유는 확실하지 않다. 각 그룹 내의 부동 소수점을 사용하여 quantile을 계산해야합니다. 누군가 내가 잘못하고있는 것을 지적 할 수 있습니까?

+0

이 [문제] (https://github.com/pydata/pandas/issues/2625)가 수정되어 판다의 다음 버전에서 볼 수 있습니다. –

답변

3

quantile()이 불필요한 열을 무시하지 않고 텍스트 열의 quantile을 찾으려고하는 것처럼 보입니다. 다음은 간단한 예제이다 : 나는 단지 숫자 열을 서브 세트 때, 그러나

In [75]: df = DataFrame({'col1':['A','A','B','B'], 'col2':[1,2,3,4]}) 

In [76]: df 
Out[76]: 
    col1 col2 
0 A  1 
1 A  2 
2 B  3 
3 B  4 

In [77]: df.groupby('col1').quantile() 
ValueError: ('could not convert string to float: A', u'occurred at index col1') 

, 내가 얻을 :

In [78]: df.groupby('col1')['col2'].quantile() 
Out[78]: 
col1 
A  1.5 
B  3.5 
+0

나는 이것을 github의 문제 (https://github.com/pydata/pandas/issues/2625)로 올렸다. –

+0

감사합니다. 이상적으로 quantile()은 mean()과 같은 모든 열에 자동으로 적용되어야하지만,이 솔루션은 현재 나를 위해 작동합니다. – ezbentley

관련 문제