List) 오늘 배운 것
1. 행/열/인덱스 함수 : shape, index, columns, values, dtypes
2.데이터살펴보기 : head/tail, sample, info, describe
3. 결측치 관련 함수 : 결측치 조회, 결측치 개수/비율
4.행/ 열 색인하기 : 슬라이싱, loc
먼저 라이브러리를 import 해줍시다
강의를 따라 dataset 예제는 seaborn에 있는 mpg(자동차 연비) 데이터셋을
변수 df에 저장해주었습니다.
그럼 pandas의 기초적인 기술통계 함수를 보겠습니다.
1. 행/열/인덱스 함수
(shape, index, columns, values,dtypes)
1-1. shape : 열과 행 모양 파악하기
>> [데이터셋 변수].shape
ex)
-df.shape 을 통해 행 389개 / 열 9개의 데이터셋 파악
1-2. index : 행 인덱스값 보기
>> [데이터셋 변수].index
ex)
-행이 0에서부터 389까지 1개씩 늘어나는 형태
1-3. columns : 각 열의 title보기
>> [데이터셋 변수].columns
ex)
- 총 9가지의 열이 있으며 각 열의 이름을 리스트로 제공
1-4. values : 각 행의 값 대략적으로 보기
>> [데이터셋 변수].values
ex)
- 각 행의 셀값을 대략적으로 표현
1-5. dtypes : 각 열의 변수 자료형(타입)
>> [데이터셋 변수].dtypes
ex)
-수치형 변수: mpg ~ model_year
-범주형 변수 : origin, name
2. 데이터 살펴보기
(head, tail, sample, info, describe)
2-1. head : 위에서부터 행 조회
>> [데이터셋 변수].head ( 조회할 행 개수)
>> head() 안에 아무것도 입력하지 않으면 : 위에서부터 5개 행 조회
ex) df.head(3) :위에 3개 행 조회하기
2-2. tail : 밑에서부터 행 조회
>> [데이터셋 변수].tail( 조회할 행 개수)
>> tail() 안에 아무것도 입력하지 않으면 : 밑에서부터 5개 행 조회
ex) df.tail() :밑에서부터 5개 행 조회하기
2-3. sample :랜덤하게 뽑기
>> [데이터셋 변수].sample( 조회할 행 개수, 옵션모드)
>> 옵션없이 사용하면 매번 랜덤하게 데이터 행 반환
>> random_stae=42 => 한번 뽑은 데이터셋 유지
ex) df.sample() : 3개 행 랜덤조회하기
2-4. info : 각 열별 대략적 정보 반환
>> [데이터셋 변수].info()
>> 1. columns :열 이름
>> 2. non-null count : NULL이 아닌 데이터 개수
>> 3. dtypes : 자료형(개수)
>> 4. memory : 메모리 사용량
ex) df.info() : 데이터셋 요약정보 보기
2-5. describe : 수치데이터 기술통계값
>> [데이터셋 변수].describe()
[describe가 보여주는 기술통계값]
1. count : 행개수
2. mean : 평균
3. std :표준편차
4. min/max :최소-최대값
5. 사분위수
ex) df.describe() : 데이터셋 기술통계값(수치데이터에 한해서)
=> 범주형 데이터 기술통계값은?
>> describe(include='object')
[describe(include ='object')가 보여주는 기술통계값]
1. count : 행개수
2. unique : 고유값 개수
3. top : 가장 많이 나온 값
4. freq : 가장 많이 나온 값의 빈도수
ex) df.describe(include ='object') : 데이터셋 기술통계값(범주형 데이터)
3.결측치 관련 함수
(결측치 조회, 결측치 개수, 결측치 비율)
3-1. isnull/isna : 각 셀이 결측치면 TRUE/ 아니면 FALSE 반환
>> [데이터셋 변수].isnull()
>> [데이터셋 변수].isna()
ex) df.isnull() : 결측치 조회
3-2. isnull/isna().sum() : 각 열별 결측치 '수' 확인
>> [데이터셋 변수].isnull(). sum()
>> [데이터셋 변수].isna(). sum()
ex) df.isnull().sum() :각 열별 결측치 수 확인
=> horsepower에 결측치 6개 존재
3-3. isnull/isna().mean() : 각 열별 결측치 '비율' 확인
>> [데이터셋 변수].isnull(). mean()
>> [데이터셋 변수].isna(). mean()
>> 백분율 조회 : [데이터셋 변수].isna(). mean() *100
ex) df.isnull().mean() * 100 : 결측치 비율 조회
=> horsepower에서 1.5%비율의 결측치 존재
4. 행/열 색인하기
(슬라이싱, loc)
4-1) seires로 열만 가져오기
>> 데이터셋 변수. ['열 이름']
ex) df['mpg'] : df데이터셋에서 mpg 열 가져오기
4-2) dataframe으로가져오기
>> 데이터셋 변수. [ ['열 이름1', '열 이름2', '열 이름3' ] ]
=> 열이름 리스트를 넣어주어야 함
ex) df [ [ 'origin' , 'name' ]] : df데이터셋에서 origin과 name열 가져오기
4-3) loc
>> 행 가져오기 : 데이터셋 변수.loc[행 넘버]
>> 두개 이상의 행 가져오기 : 데이터셋 변수.loc[ [행넘버1, 행넘버2..] ]
>> 행과 열 특정하기 :데이터셋 변수.loc[ [행넘버1, 행넘버2....] , [열 이름1, 열 이름2...]]
ex) df [ [0 , 1 ] [ 'origin' , 'name' ] ]
: df데이터셋 / 0 과 1행에서 / origin과 name열 가져오기
참고 강의 주소) 네이버 부스트코스 - 모두를 위한 데이터사이언스
'데이터 분석 > 파이썬' 카테고리의 다른 글
[나도코딩] 데이터 분석 및 시각화 - matplotlib 요약 (0) | 2023.04.12 |
---|---|
[나도코딩] 데이터 분석 및 시각화 - Pandas 요약 (0) | 2023.04.12 |
5-4) 범주형 변수 분석 (0) | 2023.03.29 |
5-3) 수치형 데이터 변수의 요약과 기술통계 (0) | 2023.03.29 |
5-2) 탐색적 데이터 도구 : pandas_profiling / sweetviz (0) | 2023.03.26 |