초보자를 위한 pandas 기초 ⑧자릿수 처리

pandas란?



Python에서 구조화 된 데이터 (테이블 형식의 데이터)를 처리하는 라이브러리입니다. 파일의 로드나 그 후의 가공·추출 처리등을 간단하게 실시할 수가 있고(SQL적인 감각으로 실시할 수 있다), 기계 학습등의 데이터의 전처리로 필수가 되는 라이브러리입니다.
다른 항목에 대한 목차는 여기입니다.

소개



이 기사에서는 자릿수를 처리하는 방법입니다. 먼저 이해하고 싶은 것은 pandas 그 자체의 자리수를 조정하는 방법과 개별 데이터 프레임이나 변수의 자리수를 조정하는 방법이 있습니다. 또, 주의로서, pandas의 반올림은 반올림이 아니고, 짝수에의 반올림이 됩니다. 짝수에 반올림을 모르는 사람은 알아보십시오.

준비



먼저 라이브러리를 가져옵니다. pandas에 pd라는 이름을 붙여 import합니다.
import pandas as pd

샘플은 타이타닉 데이터를 사용해보십시오. 타이타닉을 모르는 사람은 「kaggle 타이타닉」으로 조사해 주세요.
dataframe = pd.read_csv('train.csv')

pandas의 자릿수 조정



pandas의 다양한 설정은 option에서 관리됩니다. (그 밖에도 다양한 옵션이 있으므로 흥미가 있는 분은 조사해 주세요.) 전체의 자리수는 display.float_format 로, 소수점 이하의 자리수는 display.precision 로 관리되고 있습니다.
실제로 확인해 봅시다.

In
print(pd.options.display.float_format)
print(pd.options.display.precision)

Out
None
6

전체의 자리수에 제약은 없고, 소수점 이하는 6 자리수 표시가 되고 있습니다. 실제 데이터를 보면, 예를 들어 Fare는 소수점 이하 4자리까지 표시됩니다. 이것은 원래 CSV의 데이터가 4자리까지 밖에 없기 때문에 이러한 표시가 되고 있습니다만, 자릿수가 많으면 6자리까지의 표시가 됩니다.


다음으로 이 값을 변경하여 소수점 이하 2자리 표시로 합니다. (Fare의 표시가 2자리가 됩니다)
pd.options.display.precision = 2


초기화를 원한다면 reset_option를 사용하십시오.
pd.reset_option('display.precision')

개별적으로 설정하는 방법



개별 설정은 round()를 사용합니다. 소수점 이하 2자리수로 하는 경우는, 아래와 같습니다. (Fare의 표시가 2자리가 됩니다)
dataframe.round(2)



열마다 설정하는 경우는 아래와 같습니다. (예: Age를 1자리, Fare를 3자리로 한다.)
dataframe.round({'Age':1, 'Fare':3})



마지막으로



초보자도 알 수 있듯이 Python에서 기계 학습을 실시할 때 필요한 지식을 간편하게 기사로 정리하고 있습니다.
목차는 여기이므로 다른 기사도 참고해 주시면 감사하겠습니다.

좋은 웹페이지 즐겨찾기