Pandas 시리즈의 히스토그램 값
나는 파이썬 팬더 시리즈의 일부 값이 (종류 : pandas.core.series.Series
)
In [1]: series = pd.Series([0.0,950.0,-70.0,812.0,0.0,-90.0,0.0,0.0,-90.0,0.0,-64.0,208.0,0.0,-90.0,0.0,-80.0,0.0,0.0,-80.0,-48.0,840.0,-100.0,190.0,130.0,-100.0,-100.0,0.0,-50.0,0.0,-100.0,-100.0,0.0,-90.0,0.0,-90.0,-90.0,63.0,-90.0,0.0,0.0,-90.0,-80.0,0.0,])
In [2]: series.min()
Out[2]: -100.0
In [3]: series.max()
Out[3]: 950.0
히스토그램의 값을 얻고 싶습니다 (히스토그램을 플로팅 할 필요가 없음). 각 간격에 대한 빈도를 가져 오면됩니다.
내 간격이 [-200; -150]에서 [950; 1000]
그래서 하한은
lwb = range(-200,1000,50)
상한은
upb = range(-150,1050,50)
지금은 빈도 (각 간격 내에있는 값의 수)를 얻는 방법을 모르겠습니다 ... lwb 및 upb를 정의 할 필요가 없다고 확신합니다 ...하지만 어떤 기능을 사용해야하는지 모르겠습니다. 이것을 수행하기 위해! (Pandas doc에서 다이빙 한 후 cut
이산화 문제이기 때문에 함수가 도움이 될 수 있다고 생각 합니다 ...하지만 사용 방법을 이해하지 못합니다)
이 작업을 수행 한 후 히스토그램을 표시하는 방법을 살펴 보겠습니다 (하지만 다른 문제입니다).
히스토그램 기능 만 사용하면됩니다 NumPy
.
import numpy as np
count, division = np.histogram(series)
여기서 division은 자동으로 계산 된 bin의 경계이고 count는 각 bin 내부의 모집단입니다.
특정 수의 빈을 수정해야하는 경우 bin 인수를 사용하고 빈 수를 지정하거나 각 빈 사이의 경계를 직접 지정할 수 있습니다.
count, division = np.histogram(series, bins = [-201,-149,949,1001])
결과를 플로팅하기 위해 matplotlib 함수 hist를 사용할 수 있지만 pandas에서 작업하는 경우 각 Series에는 hist 함수에 대한 자체 핸들이 있으며 선택한 비닝을 제공 할 수 있습니다.
series.hist(bins=division)
주어진 간격 비닝 범위에서 값의 빈도 수를 얻기 pd.cut
위해 각 요소에 대한 반 개방 빈의 인덱스를 반환 value_counts
하고 해당 계수를 계산하는 데 사용할 수 있습니다.
카운트를 플로팅하기 위해 막대 플롯을 만들 수 있습니다.
step = 50
bin_range = np.arange(-200, 1000+step, step)
out, bins = pd.cut(s, bins=bin_range, include_lowest=True, right=False, retbins=True)
out.value_counts(sort=False).plot.bar()
카운트 내림차순으로 정렬 된 각 간격의 빈도 :
out.value_counts().head()
[-100, -50) 18
[0, 50) 16
[800, 850) 2
[-50, 0) 2
[950, 1000) 1
dtype: int64
미적 목적을 위해 범위의 더 낮은 폐쇄 구간 만 포함하도록 플롯을 수정하려면 다음을 수행 할 수 있습니다.
out.cat.categories = bins[:-1]
out.value_counts(sort=False).plot.bar()
히스토그램의 값을 얻고 싶다고한다면, 제가 착각하지 않았다면 단순히 계열의 각 고유 값의 빈도를 찾는 것입니다. 이 경우 간단하게 할 수 serie.value_counts()
있습니다.
0.0 16
-90.0 8
-100.0 5
-80.0 3
63.0 1
-50.0 1
130.0 1
190.0 1
840.0 1
-48.0 1
208.0 1
-64.0 1
812.0 1
-70.0 1
950.0 1
참고 URL : https://stackoverflow.com/questions/13129618/histogram-values-of-a-pandas-series
'Development Tip' 카테고리의 다른 글
스토리 보드를 통해로드되면 뷰가 어떻게 초기화됩니까? (0) | 2020.12.08 |
---|---|
ggplot2-플롯 외부에 주석 달기 (0) | 2020.12.08 |
브라우저 간 확대 방지 (0) | 2020.12.08 |
"이미있는 프로그램 유형"은 무엇을 의미합니까? (0) | 2020.12.08 |
적절한 Emacs를 어떻게 배우나요? (0) | 2020.12.08 |