2019. 9. 24. 14:29ㆍProgramming Tutorial/Python
보통 검색으로 우연히 keyword가 매칭되서 들어온 독자들이 대부분 이실 것으로 생각됩니다.
본론부터 들어가봅시다.
보통 Table 형식의 Data들은 아래와 같은 구조로 되어 있을 겁니다.
열 index 1 | 열 index 2 | 열 index 3 | 열 index 4 | ..... |
*** | *** | *** | *** | *** |
*** | *** | *** | *** | *** |
*** | *** | *** | *** | *** |
일반적인 형태죠. 여기서 출발해봅시다.
여기서 한번 가정을 해보죠. 열 index 1이 핸드폰 브랜드를 나타낸다라고요. (삼성 or 애플)
그리고 열 index2 는 당일 판매 대수를 나타낸다고 합시다.
우리는 이제 해당 Data를 종합적으로 보고 싶을 것이고, 문득 궁금해졌습니다. 해당 DataSet에서 삼성 과 애플로 구분되는 판매 대수의 평균은 얼마일까?
엑셀이라면 쉽게 피벗테이블을 쓰면 될 것입니다.
그러면 파이썬기반 Pandas에서는 아래와 같이 나타내려면 어떻게 해야 될까요?
아래와 같이 pandas data frame을 처리할수 있겠습니다.
grouped_data = dataset.groupby('휴대폰 브랜드').agg(numpy.mean)
해당 내용이 주된 내용은 아니니 일단 위 내용이 궁금하신분은 pandas의 groupby를 더 공부하시기 바랍니다.
판매대수 | 열 index 2 | 열 index 3 | 열 index 4 | 열 index 5 | |
삼성 | |||||
애플 | |||||
행 index 3 |
그러면 python과 판다스로 궁금한 형태의 위 table 모양을 만들었습니다.
이제 행 index에 집중해볼 필요가 있겠네요.
행 index는 사실 Data로 활용가치가 충분한데 groupby를 쓰면서 index로 되어있기 때문에 활용하는데 제약이 많아졌습니다.
그러면 이걸 해결하려면 어떻게 해야될까요?
브랜드 | 판매대수 | 열 index 2 | 열 index 3 | 열 index 4 |
삼성 | ||||
애플 | ||||
샤오미 |
위와 같이 row index를 없애고 Data로 바꾸면 되겠죠.
이제 본론이네요. 이렇게 row index를 없애고 그냥 열기준 Data화하고 싶을때 reset_index Method를 사용합니다.
>>> df
class max_speed
falcon bird 389.0
parrot bird 24.0
lion mammal 80.5
monkey mammal NaN
>>> df.reset_index()
index class max_speed
0 falcon bird 389.0
1 parrot bird 24.0
2 lion mammal 80.5
3 monkey mammal NaN
row_index가 일단 열 Data화가 된 것을 볼수 있습니다. 열 이름은 따로 바꿔줄수 있으니 일단 예시에서는 index로 자동 지정되었네요.
'Programming Tutorial > Python' 카테고리의 다른 글
time series decomposition에 대해서 (1) | 2022.10.08 |
---|---|
iloc, loc를 사용한 행/열 선택법 from Pandas df (3) | 2019.09.15 |
정규표현식(RegEx)의 활용 1. (contains와 그 flags 활용) (0) | 2019.09.02 |
아나콘다 설치해보자~ how to install Anaconda on your computer (0) | 2019.08.29 |
다른 .py파일을 import 하는 방법과 __name__의 정체 (1) | 2019.08.17 |