Pandas Datetime: Get all the sighting days of the unidentified flying object (ufo) between 1950-10-10 and 1960-10-10
5. UFO Sightings Between Two Specific Dates
Write a Pandas program to get all the sighting days of the unidentified flying object (ufo) between 1950-10-10 and 1960-10-10.
Sample Solution :
Python Code :
import pandas as pd
df = pd.read_csv(r'ufo.csv')
df['Date_time'] = df['Date_time'].astype('datetime64[ns]')
print("Original Dataframe:")
print(df.head())
print("\nSighting days of the unidentified flying object (ufo) between 1949-10-10 and 1960-10-10:")
selected_period = df[(df['Date_time'] >= '1950-01-01 00:00:00') & (df['Date_time'] <= '1960-12-31 23:59:59')]
print(selected_period)
Sample Output:
Original Dataframe:
Date_time city ... latitude longitude
0 1910-06-01 15:00:00 wills point ... 32.709167 -96.008056
1 1920-06-11 21:00:00 cicero ... 40.123889 -86.013333
2 1929-07-05 14:00:00 buchanan (or burns) ... 43.642500 -118.627500
3 1931-06-01 13:00:00 abilene ... 38.917222 -97.213611
4 1939-06-01 20:00:00 waterloo ... 34.918056 -88.064167
[5 rows x 11 columns]
Sighting days of the unidentified flying object (ufo) between 1949-10-10 and 1960-10-10:
Date_time ... longitude
29 1950-06-01 16:00:00 ... -89.116667
30 1950-06-01 20:00:00 ... -79.996111
31 1950-08-01 04:00:00 ... -85.759444
32 1950-10-01 11:00:00 ... -82.518889
33 1951-06-01 07:00:00 ... -99.950000
34 1951-07-01 03:00:00 ... -117.105278
35 1951-02-03 22:00:00 ... -72.599444
36 1951-06-03 13:00:00 ... -77.206944
37 1952-07-01 15:00:00 ... -95.088611
38 1952-07-01 22:00:00 ... -83.045833
39 1952-08-01 21:30:00 ... -82.458611
40 1952-10-01 12:00:00 ... -94.578333
41 1953-04-01 15:00:00 ... -71.077778
42 1953-04-01 18:00:00 ... -71.106111
43 1953-07-01 05:30:00 ... -104.820833
44 1953-08-01 12:00:00 ... -90.331111
45 1954-02-01 02:00:00 ... -147.716389
46 1954-06-01 00:00:00 ... -95.363056
47 1954-06-01 06:00:00 ... -76.823333
48 1954-06-01 08:00:00 ... -89.643611
49 1955-05-01 15:00:00 ... -71.009167
50 1955-06-01 02:00:00 ... -95.398056
51 1955-06-01 15:29:00 ... -84.456944
52 1955-06-01 17:00:00 ... -122.133056
53 1956-01-01 05:30:00 ... -80.589722
54 1956-03-01 13:00:00 ... -122.635556
55 1956-05-01 12:00:00 ... -81.378611
56 1956-06-01 19:00:00 ... -94.531667
57 1957-01-01 21:00:00 ... -96.800000
58 1957-05-01 12:00:00 ... -81.378611
59 1957-06-01 10:00:00 ... -106.486389
60 1957-06-01 20:00:00 ... -73.644444
61 1958-01-01 22:00:00 ... -102.557778
62 1958-06-01 02:00:00 ... -78.204167
63 1958-06-01 19:00:00 ... -122.418333
64 1958-06-01 21:00:00 ... -74.006389
65 1959-04-01 01:00:00 ... -80.193889
66 1959-05-01 18:30:00 ... -82.998889
67 1959-06-01 12:00:00 ... -73.026111
68 1959-06-01 18:30:00 ... -84.155556
69 1960-02-01 22:15:00 ... -93.093056
70 1960-02-01 23:00:00 ... -82.932222
71 1960-04-01 21:00:00 ... -95.363056
72 1960-05-01 20:00:00 ... -110.925833
[44 rows x 11 columns]
For more Practice: Solve these Related Problems:
- Write a Pandas program to filter the UFO dataset for sightings between 1950-10-10 and 1960-10-10.
- Write a Pandas program to create a Boolean mask that selects records with sighting dates within the specified range.
- Write a Pandas program to use query() to extract UFO sightings that occurred between two given dates.
- Write a Pandas program to generate a summary of UFO reports that fall within the decade between 1950 and 1960.
Go to:
PREV : Recent UFO Sightings (≤ 40 Years).
NEXT : Extract UFO Sighting Years.
Python Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
What is the difficulty level of this exercise?
