芝加哥经营着一个收集和汇总城市统计数据的网站: 芝加哥市数据门户。在这里您可以找到各种各样的数据集,但是我感兴趣的是犯罪统计。
经过一番探索,我发现数据以JSON(一种易于使用的软件格式)可用。因此,我整理了一个脚本来读取该数据,然后使用不同类型犯罪的总数自动更新关键字AdParams。
对于任何销售保险或安全系统的公司来说,这可能会派上用场,但是我敢肯定还有其他公司可以使用此信息。
美国其他主要城市也保存了类似的数据集:
您的企业还可以使用哪些其他公共记录数据来定位您的客户?在评论中让我知道,我会看一看。
谢谢,
拉斯
//----------------------------------- // Put Chicago Crime Stats in Your Creatives // Created By: 拉斯 Savage // FreeAdWordsScripts.com //----------------------------------- function main() { // You can get this link by going here: http://goo.gl/tfNgM // Apply some filters and then click export > api // This end point is good for all of 2013 var DATA_ENDPOINT = "http://data.cityofchicago.org/resource/pga9-zdiw.json"; var CAMPAIGN_PREFIX = 'Crime_Data_Chicago_'; //All your 运动s start with this var AD_PARAM = 1; // 1 or 2 try { var json = Utilities.jsonParse(UrlFetchApp.fetch(DATA_ENDPOINT).getContentText()); var summary = summarizeCrimeStats(json); //logCrimeSummary(summary); for(var i in summary) { var total = totalPrimaryDescription(i,summary); var kw_iter = AdWordsApp.keywords() .withCondition("CampaignName CONTAINS_IGNORE_CASE '"+CAMPAIGN_PREFIX+i+"'") .get(); while(kw_iter.hasNext()) { var kw = kw_iter.next(); kw.setAdParam(AD_PARAM, total); } } }catch(e) { } } // A helper function to aggregate the data by primary description function totalPrimaryDescription(key,summary) { var tot = 0; for(var i in summary[key]) { tot += summary[key][i]; } return tot; } //This function takes in a json formatted object and stores the count of instances //in a 2 dimentional hash of [Primary Description][Secondary Description] function summarizeCrimeStats(json) { var 犯罪_summary = {}; for(var i in json) { var 犯罪 = json[i]; if(crime_summary[crime._primary_decsription]) { if(crime_summary[crime._primary_decsription][crime._secondary_description]) { 犯罪_summary[crime._primary_decsription][crime._secondary_description]++; }else{ 犯罪_summary[crime._primary_decsription][crime._secondary_description] = 1; } }else{ 犯罪_summary[crime._primary_decsription] = {}; 犯罪_summary[crime._primary_decsription][crime._secondary_description] = 1; } } return 犯罪_summary; } //Just a helper function to print out the summary info so that //I can find the data I'm interested in. function logCrimeSummary(crime_summary) { for(var i in 犯罪_summary) { for(var x in 犯罪_summary[i]) { Logger.log([i,x,crime_summary[i][x]].join(', ')); } } }