반응형
값의 범위에 따라 그룹화된 판다
판다에게 동물을 유인할 수 있는 쉬운 방법이 있습니까?groupby
값의 증가 범위에서?예를 들어 아래의 예를 들어, I 빈과 그룹 열을 사용할 수 있습니다.B
와 함께0.155
예를 들어 열에 있는 그룹의 첫 두 개가 증가합니다.B
'0 - 0.155, 0.155 - 0.31...' 사이의 범위로 나뉩니다.
import numpy as np
import pandas as pd
df=pd.DataFrame({'A':np.random.random(20),'B':np.random.random(20)})
A B
0 0.383493 0.250785
1 0.572949 0.139555
2 0.652391 0.401983
3 0.214145 0.696935
4 0.848551 0.516692
또는 먼저 데이터를 해당 증분별로 새 열로 분류한 후 사용할 수 있습니다.groupby
열에 적용할 수 있는 관련 통계량을 결정합니다.A
?
관심이 있을 수 있습니다.
>>> df.groupby(pd.cut(df["B"], np.arange(0, 1.0+0.155, 0.155))).sum()
A B
B
(0, 0.155] 2.775458 0.246394
(0.155, 0.31] 1.123989 0.471618
(0.31, 0.465] 2.051814 1.882763
(0.465, 0.62] 2.277960 1.528492
(0.62, 0.775] 1.577419 2.810723
(0.775, 0.93] 0.535100 1.694955
(0.93, 1.085] NaN NaN
[7 rows x 2 columns]
사용해 보십시오.
df = df.sort_values('B')
bins = np.arange(0, 1.0, 0.155)
ind = np.digitize(df['B'], bins)
print df.groupby(ind).head()
물론 그룹에 대한 모든 기능을 사용할 수 있습니다.head
.
이것이 기능별 그룹을 사용하는 방법입니다.
df1=data
bins = [0,40,50,60,70,100]
group_names=['F','S','C','B','A']
df1['grade']=pd.cut(data['student_mark'],bins,labels=group_names)
df1
언급URL : https://stackoverflow.com/questions/21441259/pandas-groupby-range-of-values
반응형
'programing' 카테고리의 다른 글
요소가 표시되는 시점에 대한 이벤트 수신기? (0) | 2023.07.28 |
---|---|
utf8_(en|de)코드가 php7에서 제거되었습니까? (0) | 2023.07.23 |
판다 - 문자열 열에서 병합이 작동하지 않음(버그?) (0) | 2023.07.23 |
자바스크립트가 있는 링크를 프로그래밍 방식으로 클릭하려면 어떻게 해야 합니까? (0) | 2023.07.23 |
Brew Services: 구성을 편집할 위치? (0) | 2023.07.23 |