1. DataFrame Source
import pandas
from pandas import DataFrame
from pandas import Series
from prettytable import PrettyTable
df = DataFrame(grade_dic, index=['코난', '뭉치', '아름', '세모', '장미'])
if isinstance(df, pandas.core.frame.DataFrame):
table = PrettyTable([''] + list(df.columns))
for row in df.itertuples():
table.add_row(row)
print(str(table))
else:
print(df)
+------+------+------+------+------+
| | 국어 | 영어 | 수학 | 과학 |
+------+------+------+------+------+
| 코난 | 98.0 | nan | 88.0 | 64.0 |
| 뭉치 | 88.0 | 90.0 | 62.0 | 72.0 |
| 아름 | 92.0 | 70.0 | nan | nan |
| 세모 | 63.0 | 60.0 | 31.0 | 70.0 |
| 장미 | nan | 50.0 | nan | 88.0 |
+------+------+------+------+------+
Process finished with exit code 0
2. 열 추가
df['컴퓨터'] = [10, 50, 70, 100, 50]
df['컴퓨터'] = Series([10, 50, 70, 100, 50], index=['코난', '뭉치', '아름', '세모', '장미'])
+------+------+------+------+------+--------+
| | 국어 | 영어 | 수학 | 과학 | 컴퓨터 |
+------+------+------+------+------+--------+
| 코난 | 98.0 | nan | 88.0 | 64.0 | 10 |
| 뭉치 | 88.0 | 90.0 | 62.0 | 72.0 | 50 |
| 아름 | 92.0 | 70.0 | nan | nan | 70 |
| 세모 | 63.0 | 60.0 | 31.0 | 70.0 | 100 |
| 장미 | nan | 50.0 | nan | 88.0 | 50 |
+------+------+------+------+------+--------+
Process finished with exit code 0
df = df.drop('수학', axis = 1)
+------+------+------+------+
| | 국어 | 영어 | 과학 |
+------+------+------+------+
| 코난 | 98.0 | nan | 64.0 |
| 뭉치 | 88.0 | 90.0 | 72.0 |
| 아름 | 92.0 | 70.0 | nan |
| 세모 | 63.0 | 60.0 | 70.0 |
| 장미 | nan | 50.0 | 88.0 |
+------+------+------+------+
Process finished with exit code 0
df = df.drop(['수학','영어'], axis = 1)
+------+------+------+
| | 국어 | 과학 |
+------+------+------+
| 코난 | 98.0 | 64.0 |
| 뭉치 | 88.0 | 72.0 |
| 아름 | 92.0 | nan |
| 세모 | 63.0 | 70.0 |
| 장미 | nan | 88.0 |
+------+------+------+
Process finished with exit code 0
df = df.drop(df.columns[2], axis = 1)
+------+------+------+------+
| | 국어 | 영어 | 과학 |
+------+------+------+------+
| 코난 | 98.0 | nan | 64.0 |
| 뭉치 | 88.0 | 90.0 | 72.0 |
| 아름 | 92.0 | 70.0 | nan |
| 세모 | 63.0 | 60.0 | 70.0 |
| 장미 | nan | 50.0 | 88.0 |
+------+------+------+------+
Process finished with exit code 0
df = df.drop(df.columns[1:3], axis = 1)
+------+------+------+
| | 국어 | 과학 |
+------+------+------+
| 코난 | 98.0 | 64.0 |
| 뭉치 | 88.0 | 72.0 |
| 아름 | 92.0 | nan |
| 세모 | 63.0 | 70.0 |
| 장미 | nan | 88.0 |
+------+------+------+
Process finished with exit code 0
6. 열 조회(필터링)
df = df.filter(items=['국어','수학'])
+------+------+------+
| | 국어 | 수학 |
+------+------+------+
| 코난 | 98.0 | 88.0 |
| 뭉치 | 88.0 | 62.0 |
| 아름 | 92.0 | nan |
| 세모 | 63.0 | 31.0 |
| 장미 | nan | nan |
+------+------+------+
Process finished with exit code 0
'Python_Intermediate > Pandas' 카테고리의 다른 글
190506 11:25> Naver 실시간 검색어 20위 (0) | 2019.05.06 |
---|---|
Python Pandas 박스오피스 180505 순위 분석 (0) | 2019.05.06 |
Data Preprocessing(데이터 전처리) - 행 추가, 삭제 (0) | 2019.05.04 |
Data Preprocessing(데이터 전처리) - 기초 (0) | 2019.05.04 |
Pandas Aggregate Function(Pandas 집계 함수) (0) | 2019.05.04 |