코락 CoRock
코딩하는 락스타
코락 CoRock
  • 분류 전체보기 (393)
    • frameworks (19)
      • spring (19)
      • spring-boot (0)
      • testing (0)
    • languages (94)
      • java (39)
      • kotlin (0)
      • python (42)
      • r (13)
    • libraries (0)
    • programming (239)
      • android (13)
      • c (17)
      • cpp (22)
      • database (18)
      • design-pattern (4)
      • data-structures (11)
      • git (8)
      • hadoop (6)
      • html-css (7)
      • issue (4)
      • javascript (26)
      • jsp (34)
      • os (29)
      • php (6)
      • preferences (19)
      • etc (15)
    • discography (37)
      • k-pop (18)
      • pop (19)
    • blog (3)

블로그 메뉴

  • Programming
  • Java
  • JavaScript
  • Discography
  • K-Pop Songs
  • Pop Songs
  • Blog
  • Guestbook

공지사항

인기 글

태그

  • CentOS
  • javascript
  • 파이썬
  • linux
  • Android
  • 자바스크립트
  • oracle
  • Java
  • r
  • Spring
  • jsp
  • python

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
코락 CoRock

코딩하는 락스타

languages/python

[Python] Pandas

2019. 4. 15. 13:10
반응형

25. Pandas

 

25.1 실습 예제 - Pandas 기초

  • Series - 1차원 배열
  • DataFrame - 2차원 배열, 표 형태
import numpy as np
import pandas as pd

 

Series 자료형 생성

obj = pd.Series([3, 6, 9, 12])
print(obj)
print(type(obj))    # 자료형
print(len(obj))     # 개수

 

기본적으로 숫자 인덱스로 처리됨

obj = pd.Series([3, 6, 9, 12])
obj

 

숫자 대신 문자열 인덱스 사용 가능

# obj = pd.Series([3, 6, 9, 12]), index = ["a", "b", "c", "d"])
obj = pd.Series([3, 6, 9, 12]), index = ["1번", "2번", "3번", "4번"])
obj

 

Create a Pandas Series from Dictionary

# key, value로 구성된 딕셔너리 자료형
emp = {"김철수": 5000, "김철호": 7000, "한상민": 4000, "문대용": 4500}
print(emp)

# 딕셔너리를 Pandas의 Series로 변환
obj = pd.Series(emp)
obj

 

데이터프레임(2차원 배열)

a = pd.DataFrame([
    [10, 20, 30],
    [40, 50, 60],
    [70, 80, 90]
])

print(a)
print(type(a))
print(len(a))

 

원하는 데이터 추출하기

 

 

 

 

25.6 실습예제 - 항공운항데이터 분석

import pandas as pd
import numpy as np

# 3년치 - 로딩 시간이 오래 걸림
df1 = pd.read_csv("d:/data/airline/2006.csv", sep = ",")
df2 = pd.read_csv("d:/data/airline/2007.csv", sep = ",")
df3 = pd.read_csv("d:/data/airline/2008.csv", sep = ",")
df1 = df1.append(df2)
df1 = df1.append(df3)
# 데이터프레임의 크기 확인
df1.shape
df1.columns
# 필요한 열 선택
df2 = df1[ ["Year", "Month", "ArrDelay", "DepDelay"] ]
# 처음 5개 행
df2.head()
# 마지막 5개행
df2.tail()
df2.shape
# 결측값 제거: 하나의 열이라도 NaN이 포함된 행들을 drop 시킴
df2 = df2.dropna(how="any")
# 470746건의 결측값이 제거됨
df2.shape
result = df2.groupby(["Year", "Month"], as_index=False).sum()
result
result.to_csv("d:/data/airline/result.csv", sep=",")
반응형
저작자표시 비영리 변경금지 (새창열림)
    'languages/python' 카테고리의 다른 글
    • [Python] 웹 스크레이핑
    • [Python] Matplotlib
    • [Python] NumPy
    • [Python] 데이터 분석 라이브러리의 개요
    코락 CoRock
    코락 CoRock
    A COder dreaming of being a ROCKstar

    티스토리툴바