Day_3 02. pandas I
작성일
pandas I
1. pandas overview
- 구조화된 데이터의 처리를 지원하는 Python 라이브러리
- panel data -> pandas
- 고성능 array 계산 라이브러리인 numpy와 통합하여, 강력한 “스프레드시트”처리 기능을 제공
- 인덱싱, 연산용 함수, 전처리 함수 등을 제공
-
데이터 처리 및 통계 분석을 위해 사용
-
테이블 형태의 데이터에 최적화
- pandas 설치
conda install pandas
- Series : DataFrame 중 하나의 Column에 해당하는 데이터의 모음 Object
- DataFrame : Data Table 전체를 포함하는 Object
2. Series
- columns vector를 표현하는 object
- index 와 values로 구성
- ndarray의 subclass
- dict type으로도 만들 수 있음
- index 값을 기준으로 Series 생성
3. DataFrame
- Series를 모아서 만든 Data Table = 기본 2차원
- index, columns, values로 구성
- m x n 형태
- index 값을 기준으로 DataFrame 생성
3.1 indexing
- loc : index location
- index 이름
- iloc : index position
- index number
3.2 Trnaspose
- 전치
3.3 values
- 값들만 뽑음
3.4 to_csv
- csv 파일로 저장
- index=False 해주는게 좋음
3.5 column 삭제
- del or drop 사용
del df['debt']
4. dataframe operations
4.1 series operation
- index 기준으로 연산 수행
- 겹치는 index가 없을 경우 NaN 값으로 반환
4.2 dataframe operation
- column과 index를 모두 고려
- add operation의 fill_value 쓰면 NaN값 0으로 변환
- operation type
- add
- sub
- div
- mul
4.3 series + dataframe
- axis를 기준으로 row broadcasting 실행
5. lambda, map, apply
5.1 map for series
- pandas의 series type의 데이터에도 map 함수 사용 가능
- function 대신 dict, sequence형 자료등으로 대체 가능
z = {1: 'A', 2: 'B', 3: 'C'}
s1.map(z)
s2 = Series(np.arnage(10, 20))
s1.map(s2)
- replace function
- Map 함수의 기능중 데이터 변환 기능만 담당
- 데이터 변한시 많이 사용하는 함수
df.sex.replace(
{'male': 0, 'female': 1}
)
df.sex.replace(
['male', 'female'],
[0, 1], inplace=True
)
5.2 apply for dataframe
- map과 달리, series 전체(column)에 해당 함수를 적용
- 입력 값이 series 데이터로 입력 받아 handling 가능
- 각 columns 별로 결과값 반환
- 내장 연산 함수를 사용할 때도 똑같은 효과를 거둘 수 있음
- mean, std 등 사용가능
- scalar 값 이외에 series 값의 반환도 가능
5.3 applymap for dataframe
- series 단위가 아닌 element 단위로 함수를 적용
- series 단위에 apply를 적용시킬 때와 같은 효과
6. pandas built-in functions
6.1 describe
- Numeric type 데이터의 요약 정보를 보여줌
6.2 unique
- series data의 유일한 값을 list를 반환
6.3 sum
- 기본적인 column 또는 row 값의 연산을 지원
- sub, mean, min, max, count, median, mad, var 등
6.4 isnull
- column 또는 row 값의 NaN (null) 값의 index를 반환
- df.isnull().sum() -> 이렇게 많이 사용
6.5 sort_values
- column 값을 기준으로 데이터를 sorting
- ascending : 오름차순(True), 내림차순(False)
6.6 Correlation & Covariance
- 상관계수와 공분산을 구하는 함수
-
corr, cov, corrwith
- pd.options.display.max_rows = 100 -> row 100개 출력
- pd.options.display.max_columns = 100 -> column 100개 출력
댓글남기기