안녕하세요.
이승혁입니다.
판다스 라이브러리에 대해 공부한 내용을 공유하겠습니다.
※ Pandas Library
데이터 분석 라이브러리
데이터 수집, 정리에 최적화된 도구
오픈소스로 무료로 사용 가능 - 파이썬 내장함수
가장 배우기 쉬운 언어인 파이썬 기반
### 데이터 분석 과정과 사용 라이브러리
1. 데이터 수집 , 설명 - Pandas
2. 데이터 탐색 및 시각화 - Pandas , matplotlib , seaborn
3. 머신러닝 모델 훈련 - sklearn
4. 머신러닝 모델 평가 - Pandas
5. 머신러닝 모델 성능 개선 - Pandas
※ Pandas 자료구조
분석을 위해 다양한 소스로 다양한 형태의 데이터들이 수집됩니다.
서로 다른 형식의 데이터를 컴퓨터가 이해할 수 있도록 동일한 구조로 통합할 필요가 있습니다.
판다스의 1차적인 목적은 서로 다른 유형의 데이터를 공통의 포맷으로 정리하는 것입니다.
- 판다스 데이터 형식
1. Pandas Series
2. Pandas DataFrame
### Pandas Series
판다스 시리즈는 데이터가 순차적으로 나열된 1차원 배열의 형태를 갖습니다.
인덱스(index) : 데이터값(value) 1:1 대응이 됩니다.
판다스 시리즈 생성은 다음과 같이 할 수 있습니다.
import pandas as pd
data={'a':1,'b':2,'c':3}
series=pd.Series(data)
print(series)
series=pd.Series({'a':4,'b':5,'c':6})
print(series)
print(type(series))
인덱스 : 'a', 'b', 'c'데이터값 : 1, 2, 3, 4, 5, 6dtype : int64 --> 시리즈를 구성하는 값의 자료형시리즈의 데이터 유형은 판다스 시리즈 객체
## Index
인덱스는 대응하는 데이터 값, 주소를 저장합니다.
인덱스를 잘 다룬다면 데이터 탐색, 정렬, 선택, 결합과 같은 데이터 조작을 쉽게 할 수 있습니다.
index 속성을 이용해 인덱스만 , values 속성을 이용해 데이터 값만 추출 할 수도 있습니다.
인덱스에는 2가지 종류가 있습니다.
1. 인덱스 이름(index name) or 인덱스 라벨(index label)
2. 정수형 위치 인덱스(integer position)
print(series.index) # 인덱스만 추출 , 인덱스 이름
print(series.values) # 데이터 값만 추출
print(series[0]) # 정수형 인덱스
print(series[1]) # 정수형 인덱스
print(series[2]) # 정수형 인덱스
인덱스를 따로 지정하지 않으면 ? ,
파이썬 리스트를 시리즈로 만들면 ?
--> 알아서 정수 인덱스가 출력됩니다.
index를 출력해보면 ?
--> 해당 범위의 range 객체로 표시됩니다
series_data=['a','b','c']
sd=pd.Series(series_data)
print(sd)
print(sd.index)
인덱스가 있다는 말은 원하는 데이터, 원소만 출력할 수 있다는 뜻입니다.
인덱스의 종류가 2개는 출력할 때 서로 다르게 사용합니다.
정수 인덱스 : series[인덱스] or series[ [ 인덱스1, 인덱스2 ... ] ]
인덱스 이름 : series['인덱스'] , or series [ [ '인덱스1', '인덱스2' ... ] ]
인덱스 이름은 문자니까 따옴표만 적어주면 됩니다.
하나의 원소일 때는 대괄호만 [] , 2개 이상일 경우 리스트 형태로 대괄호 안에 작성합니다.
인덱스는 시리즈 객체 생성시 따로 지정해줄 수 있습니다.
data=['이승혁','1995-02-28','010-1234-5678','남']
# 시리즈 객체 생성 시 함께 인덱스 지정
series_data=pd.Series(data,index=['이름','생년월일','전화번호','성별'])
print(series_data,'\n--------')
print(series_data['이름'],'\n--------')
print(series_data[['이름','성별']])
print('-'*10+'\n'+'-'*10)
series_data=pd.Series(data)
# index 속성을 이용해 리스트로 부여
series_data.index=['이름','생년월일','전화번호','성별']
print(series_data)
슬라이싱을 사용해서 출력할 수도 있습니다.
'프로그래밍 > Pandas' 카테고리의 다른 글
[Pandas] 데이터 시각화 | Matplotlib | 그래프 꾸미기 (1) | 2021.01.11 |
---|---|
[Pandas] 데이터 시각화 | 판다스 내장 그래프 (2) | 2021.01.06 |
Pandas - 통계 함수 max min corr (2) | 2021.01.05 |
Pandas - 데이터 분석 (4) | 2021.01.02 |
Pandas - 판다스 연산 (6) | 2020.12.30 |
Pandas - Index 활용 (2) | 2020.12.29 |
Pandas - Dataframe 열 , 행 , 값 (0) | 2020.12.29 |
Pandas - Pandas Dataframe (0) | 2020.12.28 |