본문 바로가기

카테고리 없음

[파이썬] Pandas 불러온 데이터 살펴보기: head(), shape(), info(), describe(), value_counts(), unique()

판다스에는 데이터 분석에 유용한 여러 가지 함수(메소드)와 속성이 미리 정의되어 있습니다. 이번 시간에는 불러온 데이터를 살펴보는 기능들에 대해서 알아보겠습니다.

 

데이터 불러오기

In [1]:
# 판다스 라이브러리 임포트
import pandas as pd
# plotly express에 내장되어있는 gapminder 데이터프레임을 사용하겠습니다.
import plotly.express as px
# plotly가 설치되어있지 않다면 아래 명령으로 설치할 수 있습니다.
# !pip install plotly
 
In [2]:
df = px.data.gapminder()
 

 

컬럼명 확인하기

.columns 속성을 이용하면 해당 데이터프레임을 구성하는 컬럼명을 확인할 수 있습니다. 이 기능은 컬럼명을 변경할 때도 유용하게 사용되니 기억해주세요.

 

In [3]:
# .columns 속성을 이용하여 데이터 df의 컬럼명을 모두 출력합니다.
df.columns
 
Out[3]:
Index(['country', 'continent', 'year', 'lifeExp', 'pop', 'gdpPercap',
       'iso_alpha', 'iso_num'],
      dtype='object')
 

 

상위 N행 살펴보기

.head() 함수는 불러온 데이터의 상위 5개의 행을 출력합니다. 비슷하게 .tail()의 경우 하위 5개의 행을 출력합니다. 괄호 () 안에 원하는 숫자를 넣으면 그 숫자만큼 행을 출력합니다.

 

In [4]:
# .head() 함수를 이용하여 상위 5행을 출력합니다.
df.head()
 
Out[4]:
 
  country continent year lifeExp pop gdpPercap iso_alpha iso_num
0 Afghanistan Asia 1952 28.801 8425333 779.445314 AFG 4
1 Afghanistan Asia 1957 30.332 9240934 820.853030 AFG 4
2 Afghanistan Asia 1962 31.997 10267083 853.100710 AFG 4
3 Afghanistan Asia 1967 34.020 11537966 836.197138 AFG 4
4 Afghanistan Asia 1972 36.088 13079460 739.981106 AFG 4
 

(행, 열) 크기를 확인하기

.shape 속성을 이용하면 데이터의 (행, 열) 크기를 확인할 수 있습니다.

 

In [5]:
# .shape 속성을 이용하여 데이터 df의 (행, 열) 크기를 출력합니다.
df.shape
 
Out[5]:
(1704, 8)

 

정보 확인하기

.info() 함수는 데이터에 대한 전반적인 정보를 나타냅니다. df를 구성하는 행과 열의 크기, 컬럼명, 컬럼을 구성하는 값의 자료형 등을 출력해줍니다.

 

In [6]:

# .info() 함수를 이용하여 데이터 df의 정보를 출력합니다.
df.info()
 

Out[6]:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1704 entries, 0 to 1703
Data columns (total 8 columns):
country      1704 non-null object
continent    1704 non-null object
year         1704 non-null int64
lifeExp      1704 non-null float64
pop          1704 non-null int64
gdpPercap    1704 non-null float64
iso_alpha    1704 non-null object
iso_num      1704 non-null int64
dtypes: float64(2), int64(3), object(3)
memory usage: 106.6+ KB

 

요약 통계량 확인하기

.describe() 함수는 데이터의 컬럼별 요약 통계량을 나타냅니다. 또한 mean(), max(), median()등 개별 함수를 사용하여 통계량을 계산할 수도 있습니다.

 

In [7]:

# .describe() 함수를 이용하여 요약 통게량을 출력합니다.
df.describe()
 
Out[7]:
 
  year lifeExp pop gdpPercap iso_num
count 1704.00000 1704.000000 1.704000e+03 1704.000000 1704.000000
mean 1979.50000 59.474439 2.960121e+07 7215.327081 425.880282
std 17.26533 12.917107 1.061579e+08 9857.454543 248.305709
min 1952.00000 23.599000 6.001100e+04 241.165877 4.000000
25% 1965.75000 48.198000 2.793664e+06 1202.060309 208.000000
50% 1979.50000 60.712500 7.023596e+06 3531.846989 410.000000
75% 1993.25000 70.845500 1.958522e+07 9325.462346 638.000000
max 2007.00000 82.603000 1.318683e+09 113523.132900 894.000000
 
In [8]:
# .median() 함수를 이용하여 gdpPercap 컬럼의 중앙값(median)을 출력합니다
df['gdpPercap'].median()
 
Out[8]:
3531.8469885000004

 

시리즈 내에 각각의 값 세기

.value_counts() 함수를 이용하면 개별 컬럼 내에 각각의 값이 나온 횟수를 셀 수 있습니다.

 

In [9]:

# .value_counts()를 사용하면 
# year 컬럼 내에 존재하는 각각의 값의 개수를 알 수 있습니다.
df['year'].value_counts()
 
Out[9]:
2007    142
2002    142
1997    142
1992    142
1987    142
1982    142
1977    142
1972    142
1967    142
1962    142
1957    142
1952    142
Name: year, dtype: int64

 

normalize 옵션을 사용하면 % 로도 표현이 가능합니다.

 

In [10]:

df['year'].value_counts(normalize=True)
 
Out[10]:
2007    0.083333
2002    0.083333
1997    0.083333
1992    0.083333
1987    0.083333
1982    0.083333
1977    0.083333
1972    0.083333
1967    0.083333
1962    0.083333
1957    0.083333
1952    0.083333
Name: year, dtype: float64

 

시리즈 내에 유일한 값 확인하기

.unique() 함수를 이용하면 개별 컬럼 내에 유일한 값을 확인할 수 있습니다.

 

In [11]:

# .unique()를 사용하면 
# year 컬럼 내에 존재하는 각각의 값의 종류를 알 수 있습니다.
df['year'].unique()
 
Out[11]:
array([1952, 1957, 1962, 1967, 1972, 1977, 1982, 1987, 1992, 1997, 2002,
       2007], dtype=int64)

 

 

-이 글은 아나콘다(Anaconda3)가 설치된 환경을 기준으로 작성되었습니다.