본문 바로가기

Python_Intermediate/Pandas

[Python]Data Preparation Basic(데이터 전처리 기초) 3

 

Live Codeing

1. Sample Data

# 딕셔너리 성적 리스트
grade_dic = {
    '국어': [98, 88, 68, 64, 120],
    '영어': [None, 90, 60, 20, 50],
    '수학': [90, 70, None, 31, None],
    '과학': [120, 50, None, 60, 88]
}

 

2. 신규 열 추가

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])

# print_df(df)

# 새로운 열 추가
df['프로그래밍'] = [92, 49, 21, 20, None]

print_df(df)

 

3. 같은 값 열 추가

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])

# print_df(df)

# 새로운 열 같은값으로 추가
df['프로그래밍'] = 100

print_df(df)

 

4. series를 사용하여 열 추가

from pandas import DataFrame, Series
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])

# print_df(df)

# Series를 사용하여 열 추가
df['프로그래밍'] = Series([70, 40, 20, 38], index=['노진구', '이슬이', '비실이', '퉁퉁이'])

print_df(df)

 

5. 열 삭제

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])

# print_df(df)

# 열 삭제하기
column_del = df.drop('영어', axis=1)

print_df(column_del)

 

6. 여러개 열 삭제

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])

# print_df(df)

# 열 여러개 삭제하기
column_del = df.drop(['영어', '과학'], axis=1)

print_df(column_del)

 

7. 인덱싱 사용 열 삭제

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])
df['프로그래밍'] = [92, 49, 21, 20, None]

# print_df(df)

# 인덱싱 사용 열 삭제
column_del = df.drop(df.columns[4], axis=1)

print_df(column_del)

 

8. 슬라이싱 사용 열 삭제

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])
df['프로그래밍'] = [92, 49, 21, 20, None]

# print_df(df)

# 슬라이싱 사용 삭제
column_del = df.drop(df.columns[2:4], axis=1)

print_df(column_del)

 

9. 특정열로 새로운 데이터 프레임 생성

from pandas import DataFrame
from Data import grade_dic
from print_df import print_df

df = DataFrame(grade_dic, index=['노진구', '이슬이', '비실이', '퉁퉁이', '도라에몽'])
df['프로그래밍'] = [92, 49, 21, 20, None]

# print_df(df)

# 특정 열만 필터링하여 새로운 데이터 프레임 생성
df2 = df.filter(items=['영어', '프로그래밍'])

print_df(df2)