πΌ ΠΠ°Π½Π΄Π°Ρ: ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ - ΡΡΠ΅Π±Π½ΠΈΠΊ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ²!
ΠΠ»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ Π² pandas ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ Timedelta:
import pandas as pd
# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π°ΡΡ
date1 = pd.to_datetime('2021-09-15 12:30:00')
date2 = pd.to_datetime('2021-09-15 12:40:00')
# ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π½ΠΈΡΡ
time_difference = pd.Timedelta(date2 - date1).seconds / 60
print("Π Π°Π·Π½ΠΈΡΠ° Π² ΠΌΠΈΠ½ΡΡΠ°Ρ
:", time_difference)
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ pandas ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π΄Π°ΡΡ. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ Timedelta Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ Π΄Π°ΡΠ°ΠΌΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π·Π½ΠΈΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ Π΄Π΅Π»ΠΈΠΌ Π½Π° 60, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ .
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² pandas!
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Pandas
ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ! Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Pandas Π² Python.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Pandas ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² - pd.to_datetime(), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ Π² ΡΠΎΡΠΌΠ°Ρ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄Π²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ start_date ΠΈ end_date, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Ρ Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ. ΠΠ°ΡΠ° Π·Π°Π΄Π°ΡΠ° - Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ.
import pandas as pd
start_date = '2021-10-20 10:30:00'
end_date = '2021-10-20 11:15:00'
start_date = pd.to_datetime(start_date)
end_date = pd.to_datetime(end_date)
time_diff_minutes = (end_date - start_date).total_seconds() / 60
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ pd.to_datetime(), ΡΡΠΎΠ±Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ start_date ΠΈ end_date Π² ΡΠΎΡΠΌΠ°Ρ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ Π΄Π²ΡΠΌΠΈ Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ -. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ time_diff_minutes.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΈΡΠ»ΠΎ ΠΌΠΈΠ½ΡΡ, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ total_seconds(), ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄ Π² ΡΠ°Π·Π½ΠΈΡΠ΅, Π° Π·Π°ΡΠ΅ΠΌ Π΄Π΅Π»ΠΈΠΌ Π΅Π³ΠΎ Π½Π° 60.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ time_diff_minutes ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΈΠ½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ start_date ΠΈ end_date. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ².
ΠΠΎΡ ΠΈ Π²ΡΠ΅! ΠΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π²ΡΡΠΈΡΠ»ΠΈΠ»ΠΈ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² ΠΌΠΈΠ½ΡΡΠ°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Pandas. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΠ΅Ρ Π½ΠΈΠΊΡ Π΄Π»Ρ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΠΈΡ Π΄Π°Ρ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ².
Π― Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠ° ΡΡΠ°ΡΡΡ Π±ΡΠ»Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π΄Π»Ρ Π²Π°Ρ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ, Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΈΡ . Π£ΡΠΏΠ΅Ρ ΠΎΠ² Π²Π°ΠΌ Π² ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ Pandas ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Π² Python!