Pandas Datetime: Count year-country wise frequency of reporting dates of unidentified flying object (UFO)
10. Year-Country Wise Frequency of UFO Reports
Write a Pandas program to count year-country wise frequency of reporting dates of unidentified flying object (UFO).
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())
df['Year'] = df['Date_time'].apply(lambda x: "%d" % (x.year))
result = df.groupby(['Year', 'country']).size()
print("\nCountry-year wise frequency of reporting dates of UFO:")
print(result)
Sample Output:
Original Dataframe:
Date_time city ... latitude longitude
0 1949-10-10 20:30:00 san marcos ... 29.883056 -97.941111
1 1949-10-10 21:00:00 lackland afb ... 29.384210 -98.581082
2 1955-10-10 17:00:00 chester (uk/england) ... 53.200000 -2.916667
3 1956-10-10 21:00:00 edna ... 28.978333 -96.645833
4 1960-10-10 20:00:00 kaneohe ... 21.418056 -157.803611
[5 rows x 11 columns]
Country-year wise frequency of reporting dates of UFO:
Year country
1949 us 1
1955 gb 1
1956 us 1
1960 us 1
1961 us 1
1965 gb 1
us 1
1966 us 2
1968 us 2
1970 us 2
1971 us 1
1972 us 2
1973 us 1
1974 gb 1
us 2
1975 us 1
1976 gb 1
us 1
1977 us 2
1978 us 1
1979 us 3
1980 us 3
1984 us 3
1985 gb 1
1988 us 4
1989 us 2
1990 us 1
1991 us 2
1992 us 4
1993 us 2
1994 ca 1
us 2
1995 us 2
1996 us 3
1997 us 4
1998 ca 1
us 8
1999 us 10
2000 ca 1
us 6
2001 au 1
ca 1
us 6
2002 au 1
ca 1
us 5
2003 us 8
2004 ca 1
us 1
dtype: int64
For more Practice: Solve these Related Problems:
- Write a Pandas program to create a pivot table that counts the frequency of UFO reports by year and country.
- Write a Pandas program to group the UFO dataset by year and country and then compute the count of reports for each combination.
- Write a Pandas program to generate a multi-index pivot table that shows the frequency of sightings aggregated by year and country.
- Write a Pandas program to summarize the UFO reporting frequency by creating a cross-tabulation of year versus country.
Go to:
PREV : Convert Datetime to Timestamp.
NEXT : Extract Unique UFO Reporting Dates.
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?
