我有一个超过33,000行的数据框,我想简化:
Crime type
GeographyCode
E01006687 Burglary
E01007229 Anti-social behaviour
E01007229 Anti-social behaviour
E01007229 Anti-social behaviour
E01007229 Burglary
E01007229 Other theft
E01007229 Other theft
E01007229 Shoplifting
E01007229 Theft from the person
E01007230 Anti-social behaviour
E01007230 Anti-social behaviour
E01007230 Anti-social behaviour
E01007230 Anti-social behaviour
E01007230 Anti-social behaviour
E01007230 Anti-social behaviour
...
“地理编码”有207个独特的值。以及犯罪类型'。
的12个独特价值观我想创建一个包含207行和12列以及“地理编码”的新数据框。 index列,每列代表一种犯罪类型,并包含GeographyCode中该犯罪类型的所有出现次数。
这样的事情:
Burglary Anti-social Theft Shoplifting etc...
GeographyCode
E01006687 1 3 9 5 ...
E01007229 1 3 2 1 ...
E01007230 0 6 12 5 ...
...
我尝试过一些事情,但由于没有数字值,我发现很难得到我需要的东西。
答案 0 :(得分:6)
您可以使用crosstab
来计算:
>>> pd.crosstab(df.index, df['Crime type'])
Crime type Anti-social behaviour Burglary Other theft Shoplifting ...
E01006687 0 1 0 0
E01007229 3 1 2 1
E01007230 6 0 0 0