AI기본과정/데이터분석 기초

데이터분석 기초 | Pandas 판다스 설치 | Pandas 사용 방법 | 데이터 구조 | 시리즈, 데이터 프레임 개념 | 시리즈, 데이터 프레임 생성 방법 | Numpy(넘파이), 딕셔너리 활용

ANNASENA 2023. 6. 7. 08:00
728x90

 

1. Padas(판다스) 기본


   1. 파이썬으로 표 형태의 데이터를 처리할 때 폭넓은 기능을 제공해주는 라이브러리
   2. 간단한 개념 증명이나 빠르고 쉬운 데이터 처리에 간편히 판다스를 사용

   3. 결과물을 HTML, Excel, DB 파일 등 원하는 형식으로 출력 가능

 


2. Pandas 설치 

pip install pandas

import pandas as pd
# 에러 안 나면 정상적으로 설치 된 것

 

▶ Pandas 버전 확인

print(pd.__version__)

 


3. Pandas 활용 기본


▶ 판다스 사용이유
   1. 파이썬의 데이터 조작 기능을 강화
   2. 대표적 데이터 관련 라이브러리
   3. 데이터 프레임 조작에 특화

 

▶ 데이터 구조_시리즈와 데이터프레임의 개념

 


4. 시리즈 생성 방법과 특징

 

시리즈 생성하기

ser = pd.Series([1,3,5,7,9])
ser

 

* 시리즈 .index, .values

: 인덱스 값의 시작은 0 , 총 길이를 N이라고 했을 때 N-1까지의 숫자

ser.index

ser.values

 

* 시리즈의 이름과 값 확인하기

series.name

series.values

 

* .tolist( ) : 시리즈를 리스트로 만들 때 사용

series_tolist = series.tolist() 
type(series_tolist)

 

 

▶ 넘파이 배열을 활용해 시리즈 생성하기

 

* Series( )

: 함수의 매개변수 값이 저장해둔 변수를 지정하여 시리즈를 생성함

import numpy as np

data = np.random.randint(0,10,5)                # randint(시작범위, 끝범위)
index = ['a','b','c','d','e']
series = pd.Series(data = data,                 
                   index = index,
                   name = 'series_from_ndarray')
# Series() 함수의 매개변수 값이 저장해둔 변수를 지정하여 시리즈를 생성

print(series)

 

 

▶ 딕셔너리 활용해 시리즈 생성하기

data = {'서울' : 70000, '부산' : 52000, '대전' : 35000, '광주' : 45000, '제주도' : 28000}
series = pd.Series(data = data, 
                   name = 'series_from_dict')
print(series)

 

* 위 data 값에 없는 '울릉도'를 넣었을 때 출력되는 값

city = ['광주', '대전', '부산', '서울', '울릉도']
series = pd.Series(data = data,
                   index = city,
                   name = 'series_from_dict')
print(series)

 


5. 데이터프레임 생성 방법과 특징

 

data = {'도시' : ['서울','서울','서울','부산','부산','부산'],
        '연도' : [2020, 2019, 2018, 2020, 2019, 2018],
        '인구수': [15865, 15964, 16034, 4342, 4380, 4416]}

frame = pd.DataFrame(data)
frame

 

 

▶ 컬럼 순서 지정해서 데이터프레임 설정하기

: 데이터프레임 생성 시 매개변수 columns에 컬럼 순서 지정

frame = pd.DataFrame(data, columns = ['연도', '도시', '인구수'])  
frame

 

* 위 frame 값에 없는 '변화율'을 넣었을 때 출력되는 값

frame = pd.DataFrame(data, columns = ['연도','도시','인구수','변화율'])
frame

 

 

▶ 여러 개의 시리즈를 결합하여 데이터프레임 생성하기

 

   1. 시리즈가 담겨 있는 딕셔너리 형태의 데이터프레임
   2. 넘파이 배열로 시리즈를 여러 개 생성한 뒤 데이터프레임을 생성
   3. 시리즈의 길이와 인텍스의 길이를 모두 동일하게 설정

 

data = {'컬럼1' : pd.Series(data = np.random.randint(10,100,5),
                           index = ['가','나','다','라','마']),
        '컬럼2' : pd.Series(data = np.random.randint(10,100,5),
                           index = ['가','나','다','라','마']),
        '컬럼3' : pd.Series(data = np.random.randint(10,100,5),
                           index = ['가','나','다','라','마'])}

frame = pd.DataFrame(data = data)
frame

 

* .values로 값만 출력해보기

frame.values

728x90