Pandas 공식 홈페이지에 있는 Tutorial 내용을 소개 합니다. 10개 정도 topic으로 소개하고 있네요.
자~ 시작 합니다. 가볍게 본다는 기분으로 훑어보면 좋을 것 같습니다.
Pandas를 사용하기 위해서는 먼저 아래와 같이 pandas package를 import 합니다. 그리고 보통 pd로 설정됩니다. (많이 본건 아니지만 생각해보니 pd 이외에 다른 명칭으로 사용하는 곳은 못 본것 같습니다.)
import pandas as pd
Titanic의 승객 정보를 저장하는 경우를 생각해 봅시다. 일련의 승객들의 이름과 나이 그리고 성별 데이터가 있습니다. 데이터들을 테이블에 저장하기 위해서는 DataFrame을 생성해야 합니다. 가장 먼저 떠오르는 - 그리고 가장 유사한 - Python의 Dictionary를 이용해서 생성하기로 합니다. 우리가 배웠던 Dictionary의 key는 column header들로 사용되고, value들은 DataFrame의 Column들의 내용이 됩니다. 자 아래를 보시죠.
df = pd.DataFrame(
{
"Name": [
"Braund, Mr. Owen Harris",
"Allen, Mr. William Henry",
"Bonnell, Miss. Elizabeth",
],
"Age": [22, 35, 58],
"Sex": ["male", "male", "female"],
}
)
df
DataFrame은 서로 다른 데이터타입 (문자열, 정수, 부동소수점, 범주형 데이터 등등) 들을 저장할 수 있는 2차원 구조를 가집니다. 엑셀의 스프레드시트, SQL 테이블 그리고 R에서의 data.frame과 유사하죠. 위의 테이블을 보면 3개의 column들이 있고 각각 'Name', 'Age' 그리고 'Sex' 같은 label이 가집니다. 'Name' column 은 문자열인 텍스트 데이터로 구성되며 'Age' column은 숫자, 그리고 'Sex' column은 역시 텍스트 데이터입니다. 아래는 스프레드 시트 입니다. 비슷하죠?
Age column을 보시죠.
df["Age"]
pandas DataFrame의 한 column은 pandas의 Series객체로 구성이 됩니다. (1차원 배열 (index는 무시하기로 한다면)인 Series가 모여서 2차원 배열인 DataFrame이 된다고 생각하면 쉬울 듯 합니다.) column을 선택하기 위해서는 [ ] 사이에 column label을 " " 나 ' ' 안에 label을 넣어 줍니다. Python의 dictionary 사용법과 유사합니다. type(df["Age"])로 확인해보면 Serices 객체라고 표시됩니다. Python에서 type을 이용하여 자료형을 확인할 수 있습니다. 꼭 데이터 타입을 확인하는 습관을 기르면 좋겠습니다.
아래와 같이 Series 객체를 생성할 수도 있습니다.
ages = pd.Series([22, 35, 58], name="Age")
ages
위에서 보듯이 panda의 Series는 column label이 없고, index라 불리는 row label은 있습니다.
가장 나이가 많은 승객은 ? 아래와 같이 Age colume을 선택하고, max() 함수를 이용해서 구할 수 있습니다. 두 경우 모두 Series 객체의 max()를 사용하고 있습니다. 이 외에도 여러가지 수학 함수를 제공 하고 있습니다.
df["Age"].max()
ages.max()
describe()를 사용하면 DataFrame의 기본 통계를 확인 할 수 있습니다. Name이나 Sex column들은 정수형 데이터가 아니므로 통계를 제공하지 않습니다.
df.describe()
원본출처 : https://pandas.pydata.org/pandas-docs/stable/getting_started/intro_tutorials/index.html
[Pandas] Series, DataFrame, Axis (0) | 2021.08.04 |
---|---|
[pandas] dataframe column 추출하기 - pop() 이용 (0) | 2021.08.03 |
[Pandas] DataFrame에서 열 삭제 하기 (0) | 2021.08.03 |
[Pandas] DataFrame에 열 추가 하기 (0) | 2021.08.03 |
댓글 영역