728x90
728x90
🔉 빅데이터 분석을 편리하게 해주는 파이썬 라이브러리인 Pandas에 대해 공부해보자!
📝목차
1. 데이터 프레임 생성
2. column명 추출 & 변경
1. 데이터 프레임 생성
☑️ list를 사용해서 데이터 프레임 만들기
import pandas as pd
# list를 이용해서 데이터 프레임 만들기
name_list = ["안유진","가을","레이","장원영","리즈","이서"]
korean_list = [90,85,70,87,85,85]
english_list = [95,85,87,94,74,84]
exam = pd.DataFrame({"name": name_list,"korean": korean_list, "english": english_list})
exam
output:
☑️ Dictionary를 사용해서 데이터 프레임 만들기
- Dictionary의 key값이 열 이름, value값이 열을 채운다.
- value들의 길이가 동일하다면, DataFrame으로 쉽게 변환할 수 있다.
import pandas as pd
# Dictionary를 사용해서 데이터 프레임 만들기
Ive_list = { "name" :["안유진","가을","레이","장원영","리즈","이서"], "korean_list" : [90,85,70,87,85,85]
, "english_list" : [95,85,87,94,74,84] }
Ive_list
output:
#dictionary -> dataframe
Ive_list = pd.DataFrame(Ive_list)
Ive_list
output:
☑️ 데이터프레임에 결측치 값을 넣고 싶을 때
- 리즈가 결시를 해서 국어, 영어 값이 없는 상황( 결시해도 0점이 아닌...)
# 결측치로 넣고 싶은데 변수명으로 인식해서 오류
Ive_list = { "name" :["안유진","가을","레이","장원영","리즈","이서"], "korean_list" : [90,85,70,87,NaN,85]
, "english_list" : [95,85,87,94,NaN,84] }
Ive_list
다음과 같이 작성하면 NaN을 변수명으로 인식해서 오류가 발생한다.
행렬, 선형대수 등에 쓰이는 파이썬 라이브러리 numpy를 이용해서 해결하면 된다!
# numpy의 np.NaN을 이용해서 해결
import numpy as np
Ive_list = { "name" :["안유진","가을","레이","장원영","리즈","이서"], "korean_scoreS" : [90,85,70,87,np.NaN,85]
, "english_score" : [95,85,87,94,np.NaN,84] }
Ive_list = pd.DataFrame(Ive_list)
Ive_list
output:
2. 컬럼명 추출 & 변경
☑️ 컬럼명 조회
# 열 이름 조회
Ive_score.columns
output:
☑️ 컬럼명 추출
Ive_score.columns[0]
output:
☑️ 컬럼명 변경① - 전체 열 이름 입력하기
#전체 열 입력하기
Ive_score.columns=["이름","국어점수","수학점수"]
Ive_score
output:
☑️ 컬럼명 변경② - 일부 열 이름 입력하기
- 컬럼이 많을 경우, 일부분만 바꿀 때 효과적이다.
Ive_score.rename(columns={"name": "이름"})
output:
❗️ 위와 같이 코드를 짜면 Ive_score에 적용은 되지 않는다. 적용하려면
- Ive_score = Ive_score.rename(columns={"name": "이름"})
- Ive_score.rename(columns={"name": "이름"}, inplace=True)
같은 방법을 사용하면 된다!
728x90
728x90
'Programming > Pandas' 카테고리의 다른 글
[Pandas] 데이터 정렬(sort_values, sort_index) (0) | 2023.02.12 |
---|---|
[Pandas] 조건에 맞는 데이터 추출 (0) | 2023.02.12 |
[Pandas] 원하는 위치의 데이터 추출(loc, iloc) (0) | 2023.02.12 |
[Pandas] 시리즈(Series) 기초 (0) | 2023.02.05 |
[Pandas] 데이터 복사(copy(), 깊은 복사, 얕은 복사) (0) | 2023.02.05 |