[빅데이터분석기사] 판다스7-시계열데이터2

2025. 6. 12. 00:26·Data/빅데이터분석기사
728x90

시계열 데이터를 불러올 때 특정 컬럼만 가져오고 싶다면 usecols를 사용하면 된다.

해당 컬럼이 년월일 시분초로 되어있다면 parse_dates 사용해서 dateframe형식으로 넣어주면 된다.

df = pd.read_csv("date.csv", usecols=["DateTime4"], parse_dates=["DateTime4"])
df

 

datetime을 사용하면 현재시간을 받아올 수 있으며, timedelta로 datetime 객체의 더하기 빼기를 수행할 수 있다.

  • Timedelta(days=더할날짜) 이후 데이터프레임에 변수 day를 더해주면 된다.
  • Timedelta(hours=더할시간) 이후 데이터프레임에 변수 timed을 더해주면 된다.
# 100일째 되는 날
day = pd.Timedelta(days=100)
df["DateTime4"] + day
# 100시간 이후
time = pd.Timedelta(hours=100)
df["DateTime4"] + time

 

시간을 연산하는 문제가 출제될 수 있음

이렇게 3주 3일 3시간 3분 3초 이전/이후의 경우 Timedelta 괄호 안에 다 넣어주면 한번에 처리된다.

# 시간 +/- (3주 3일 3시간 3분 3초 이전과 이후)
diff = pd.Timedelta(weeks=3, days=3, hours=3, minutes=3, seconds=3)
df["이전"] = df["DateTime4"] - diff
df["이후"] = df["DateTime4"] + diff
df

 

Timedelta 사용하게 되면 datetime형태였던 데이터가 timedelta형으로 바뀌게 된다. (사칙연산으로 계산도 가능)

➡️ 기출에선 사칙연산 결과를 timedelta형으로 출력하는 것이 아니라 초나 분, 일(days)로 변환하라고 나왔음

# timedelta 자료형(datetime간의 연산 결과)
diff = df["100일"] - df["100시간"]
diff

 

기간을 초로 변환하기 위해서는 total_seconds() 사용하면 된다.

연산결과 저장한 변수.dt.total_seconds()

diff.dt.total_seconds()

 

total_seconds()를 활용해 초, 분, 시간, 일 까지 알 수 있다.

total_seconds()는 95일 20시간을 전부 변환한다.

print(diff.dt.total_seconds()) # 초
print(diff.dt.total_seconds()/60) # 분
print(diff.dt.total_seconds()/60/60) # 시간
print(diff.dt.total_seconds()/60/60/60) # 일

 

연산결과 저장한 변수.dt.days 와 연산결과 저장한 변수.dt.seconds 에서는 95일 20시간 중 20시간만 변환한다.

그래서 기간의 초를 구하는 문제에서는 total_seconds()를 사용해야한다.

print(diff.dt.days) # 일
print(diff.dt.seconds) # 초

 

반올림은 round 사용

# 반올림 (ex: 5.49분) 30초 이상이면 올림, 30초 미만이면 버림
value = 5.49
print(round(value))
728x90

'Data > 빅데이터분석기사' 카테고리의 다른 글

[빅데이터분석기사] 작업형1 모의문제3+4  (0) 2025.06.13
[빅데이터분석기사] 작업형1 모의문제1+2  (0) 2025.06.13
[빅데이터분석기사] 판다스6 - 시계열 데이터1  (0) 2025.06.11
[빅데이터분석기사] 판다스5 - 그룹핑, 병합, 피벗테이블  (1) 2025.06.10
[빅데이터분석기사] 판다스4 - 문자열, 내장함수  (1) 2025.06.10
'Data/빅데이터분석기사' 카테고리의 다른 글
  • [빅데이터분석기사] 작업형1 모의문제3+4
  • [빅데이터분석기사] 작업형1 모의문제1+2
  • [빅데이터분석기사] 판다스6 - 시계열 데이터1
  • [빅데이터분석기사] 판다스5 - 그룹핑, 병합, 피벗테이블
DROPDEW
DROPDEW
💻 Developer | 기록하지 않으면 존재하지 않는다
  • DROPDEW
    제 2장 1막
    DROPDEW
  • 전체
    오늘
    어제
    • Dev (444)
      • App·Android (1)
      • BE (50)
        • HTTP 웹 기본 지식 (8)
        • 스프링 입문 - 코드로 배우는 스프링 부트, 웹 .. (12)
        • 스프링부트와 JPA 활용 (11)
        • 스프링부트 시큐리티 & JWT (0)
        • 실전 자바 기본, 중급 (1)
        • PHP (11)
      • FE·Client (23)
        • HTML (1)
        • React (19)
        • Unity (1)
      • Data (28)
        • AI (7)
        • Bigdata (6)
        • Database (1)
        • Python (0)
        • 빅데이터분석기사 (13)
      • Infra (1)
      • Activity (9)
        • Intern (0)
        • SK AI Dream Camp (2)
        • 구름톤 유니브 4기 (1)
        • 리모트 인턴십 6기 (3)
        • 봉사활동 (0)
        • 부스트캠프 AI Tech 8기 (3)
      • CS (8)
      • 취준 (13)
        • 자격증 (4)
        • 인적성·NCS (6)
        • 코테·필기·면접 후기 (3)
      • 코테 (270)
        • Algorithm (222)
        • SQL (35)
        • 정리 (13)
      • 인사이트 (27)
        • 금융경제뉴스 (7)
        • 금융용어·지식 (2)
        • 북마크 (7)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    문자열
    너비우선탐색
    수학
    정렬
    티스토리챌린지
    시뮬레이션
    브루트포스 알고리즘
    투포인터
    다이나믹프로그래밍
    그래프탐색
    백준
    이분탐색
    최단경로
    그래프이론
    구현
    자료구조
    오블완
    매개변수탐색
    누적합
    그리디알고리즘
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
DROPDEW
[빅데이터분석기사] 판다스7-시계열데이터2
상단으로

티스토리툴바