Pandas Datetime: получите разницу между документированной датой и отчетной датой неопознанного летающего объекта (НЛО).
Pandas Datetime: Упражнение-12 с решением
Напишите программу Pandas, чтобы получить разницу (в днях) между документированной датой и отчетной датой неопознанного летающего объекта (НЛО).
Пример решения :
Код Python:
import pandas as pd
df = pd.read_csv(r'ufo.csv')
df['Date_time'] = df['Date_time'].astype('datetime64[ns]')
df['date_documented'] = df['date_documented'].astype('datetime64[ns]')
print("Original Dataframe:")
print(df.head())
print("\nDifference (in days) between documented date and reporting date of UFO:")
df['Difference'] = (df['date_documented'] - df['Date_time']).dt.days
print(df)
Пример вывода:
Исходный кадр данных: Дата / время город ... широта долгота 0 1910-06-01 15:00:00 Уиллс пойнт ... 32.709167 -96.008056 1 1920-06-11 21:00:00 Цицерон ... 40.123889 -86.013333 2 1929-07-05 14:00:00 Бьюкенен (или горит) ... 43.642500 -118.627500 3 1931-06-01 13:00:00 Абилин ... 38.917222 -97.213611 4 1939-06-01 20:00:00 Ватерлоо ... 34.918056 -88.064167 [5 строк по 11 столбцов] Разница (в днях) между документированной датой и отчетной датой НЛО: Дата и время ... Разница 0 1910-06-01 15:00:00 ... 34652 1 1920-06-11 21:00:00 ... 32476 2 1929-07-05 14:00:00 ... 26704 3 1931-06-01 13:00:00 ... 27286 4 1939-06-01 20:00:00 ... 27293 5 1939-07-07 02:00:00 ... 24163 6 1941-06-01 13:00:00 ... 22772 7 1942-06-01 22:30:00 ... 23807 8 1944-01-01 12:00:00 ... 22120 9 1944-06-01 12:00:00 ... 23720 10 1944-04-02 11:00:00 ... 22293 11 1945-06-01 13:30:00 ... 23913 12 1945-06-07 07:00:00 ... 22001 13 1945-08-08 12:00:00 ... 21345 14 1945-07-10 01:30:00 ... 21322 15 1946-02-01 17:00:00 ... 21801 16 1946-07-01 13:30:00 ... 22626 17 1946-01-08 02:00:00 ... 22700 18 1947-06-01 02:30:00 ... 19689 19 1947-06-01 17:00:00 ... 24196 20 1947-07-01 20:00:00 ... 21108 21 1947-07-01 20:00:00 ... 21108 22 1948-08-01 02:00:00 ... 20863 23 1948-05-10 19:00:00 ... 20794 24 1948-12-12 23:30:00 ... 22011 25 1949-05-01 14:00:00 ... 19314 26 1949-07-01 11:00:00 ... 23550 27 1949-07-01 16:00:00 ... 20142 28 1949-04-10 15:00:00 ... 20105 29 1950-06-01 16:00:00 ... 21103 .. ... ... ... 317 2002-03-01 06:15:00 ... 17 318 01-08-2002, 15:25 ... 14 319 2002-01-02 17:30:00 ... 8 320 2002-07-03 01:00:00 ... 43 321 2002-07-04 20:23:00 ... 21 322 2002-09-05 23:00:00 ... 1694 323 2002-10-05 23:00:00 ... 9 324 06-05-2002, 15:50 ... 7 325 2002-01-07 18:00:00 ... 3 326 2002-09-08 16:00:00 ... 4 327 09-05-2002, 18:00:00 ... 4 328 2002-05-10 23:30:00 ... 226 329 2002-01-11 18:45:00 ... 17 330 2002-02-12 20:00:00 ... 9 331 2003-04-01 01:00:00 ... 62 332 02-10-2003, 02:45:00 ... 4 333 04-11-2003, 20:00:00 ... 3 334 06-01-2003, 10:10 ... 63 335 2003-05-07 02:00:00 ... 1 336 2003-07-08 00:30:00 ... 7 337 2003-04-09 21:00:00 ... 12 338 10-03-2003, 20:52 ... 10 339 2003-07-11 20:50:00 ... 74 340 2004-02-01 01:00:00 ... 10 341 2004-10-02 18:20:00 ... 24 342 05-04-2004, 20:35 ... 3 343 2004-10-06 23:00:00 ... 20 344 2004-11-07 20:30:00 ... 1 345 2004-12-08 05:30:00 ... 971 346 2004-02-10 05:15:00 ... 1 [347 строк х 12 столбцов]
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу Pandas для извлечения уникальных дат сообщения о неопознанном летающем объекте (НЛО).
Далее: Напишите программу Pandas для добавления 100 дней с отчетной датой неопознанного летающего объекта (НЛО).
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code