我正在对芝加哥的犯罪数据进行回归分析,我想对每个地区的年度犯罪数量进行汇总。我知道芝加哥的犯罪数据相当大,但可以公开获取以了解数据。现在我所做的是5年内每个地区的总犯罪率,但我只是想看看每个地区的年犯罪率,我只对前5名犯罪感兴趣。你知道吗
数据
这是关于凯格尔的芝加哥犯罪数据:chicago crime data
我所做的:
crimes_2012 = pd.read_csv('Chicago_Crimes_2012_to_2017.csv', sep=',', error_bad_lines=False)
crimes_2012.drop_duplicates(subset=['ID', 'Case Number', 'Date'], inplace=True)
crimes_2012.drop(['Unnamed: 0','Case Number','IUCR','FBI Code','Updated On',
'X Coordinate','Y Coordinate'], inplace = True, axis = 1)
crimes_2012 = crimes_2012.dropna(axis = 0, how = 'any')
以下是我对每个地区的犯罪总数所做的计算:
df=crimes_2012[['Primary Type', 'Location Description', 'Community Area']]
crime_catg = df.groupby(['Community Name', 'Primary Type'])['Primary Type'].count().unstack()
crime_catg = crime_catg[['THEFT','BATTERY', 'CRIMINAL DAMAGE', 'NARCOTICS', 'ASSAULT']]
所需输出:
我想得到每个地区/社区每种犯罪类型的年度计数。像这样:
有什么方便的方法可以轻松地做到这一点吗?我尝试了熊猫的交叉表,但实际上没有得到正确的输出。怎么做?你知道吗
下面是如何创建所需的交叉表。有两个问题,首先需要将列} 和^{} 5个犯罪。你知道吗
'Date'
转换为datetime类型。然后我们将过滤crimes_2012
框架的一个子集,以便只包含您感兴趣的^{最后,创建^{} 并使用^{} 获得所需的形状。你知道吗
如果需要展平列级别,请使用:
[输出]
相关问题 更多 >
编程相关推荐