#개요
📌 TIMEDELTA

# 데이터 불러오기 (usecols, parse_dates)
df = pd.read_csv("date.csv", usecols = ['DateTime4'], parse_dates = ['DateTime4'])
df
📌 100일째 되는 날

# 100일째 되는 날
day = pd.Timedelta(days = 99)
df['100일'] = df['DateTime4'] + day
df
📌 100시간 이후

# 100시간 이후
hour = pd.Timedelta(hours = 100)
df['100시간'] = df['DateTime4'] + hour
df
📌 특정 기간 이전과 이후

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

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

# 기간을 초로 변환 total_seconds() > timedelta type 에만 적용 가능!
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/24) #일
📌 일(days), 초(seconds)

# 일(days), 초(seconds)
# dt.seconds 는 해당 timedelta 값의 시간 부분만 초로 변경해주기 때문에,
# 날짜를 포함한 전체 시간을 구하고 싶다면 total_seconds 를 사용해야 한다!
print(diff.dt.days)
print(diff.dt.seconds)
📌 반올림

# 반올림 (ex: 5.49분) 30초 이상이면 올림, 30초 미만이면 버림
# 0.49 * 60 (0.49분에 대한 초 계산) = 29.4초로 30초 미만이라 버림.
value = 5.49
round(value)