У меня есть набор данных, который состоит из «ячеистых блоков» (небольших географических единиц, обычно используемых для данных переписи) и преступлений. Это записано. В настоящее время данные структурированы в формате:
DataFrame
: records
Meshblock Crime
1100 Trolling
1200 Not indenting code
1300 Trolling
1400 Trolling
1200 Not indenting code
1100 Trolling
Я создал новый DataFrame
, проиндексированный с использованием отдельных мешблоков, с полученными столбцамииз категорий преступлений.
DataFrame
: df
Meshblock trolling not indenting code
1100
1200
1300
1400
и список отдельных категорий преступлений:
offences[trolling, not indenting code]
Что я пытаюсьсделать сейчас - это подсчитать число совершенных n преступлений в сетке x.
Текущий код, который у меня есть на данный момент:
for off in offences:
for col, row in df.iterrows():
for col1, row1 in records.iterrows():
#if the codes match and the offence is present for the match then we increment the count by 1
if row['Meshblock'] == row1['Meshblock'] and row1['Crime'] == off:
#something here that will iterate the count by 1 where there is a match
Финальный DataFrame
должен выглядеть следующим образом:
DataFrame
: df
Meshblock trolling not indenting code
1100 2
1200 2
1300 1
1400 1