2024.05.30 04:30【Flourish】期間中に件数が増加した地域を可視化(Areas where the number of cases increased during the period)では同様に、Flourishで表示していきます。前回QJISでは、期間前半後半で犯罪件数が10倍超になった場所に絞りましたが、今回はプラスになった(2010-2014より2015-2019の犯罪件数が多かった)場所すべてを地図に置いていきます。1倍(同じ件数)も含んでるから増加とはいえないか。うーんでも全体件数半減だから言えないこともないか。いや屁理屈やん。使用データは【SQL】件数10倍超ブロックの緯度経度中央値記事のメーンSQLからWHERE ( count1519 / count1014 ) > 10を省いて、全ての道路の比率を用います。あ、ゼロ除算チェックしてない。こういうとき、計算はもう単純にプラマイかゼロ排除か基準値置き換えか、ルーテ...
2024.05.11 02:10【SQL】件数10倍超ブロックの緯度経度中央値(Median lat/long of blocks where the number of crimes more than 10-fold)発生件数5倍以上は17件、いっそ10倍以上になってるブロックについて可視化したい。「あのへん近付かないほうがいいか」と。しかしブロック基準で地図に落とし込むとすると、各ブロックの緯度経度を集約しなきゃいけない。同じ道路でも距離があったり細かく入力されていたりすると、歩道の対面でも緯度経度変わるから、道路の中央値を取ってまとめたいところ。発生件数10倍以上のブロックを探すブロックの位置情報一覧を出すブロックごとの緯度経度中央値を出す1.発生件数10倍以上のブロックを探す【SQL】前回続き:メーン部分のみ変更SELECT block, count1014, count1519, ROUND(( count1519 / count1014 ),1...
2024.05.08 09:00【SQL】犯罪多発ブロックの期間増減(Periodic increase/decrease in certain high crime blocks)実際住んでたら、ブロック名はわかりますよね。「あのへん危ない」がわかれば、送り迎えで通らないとか、繁華街とか、住人だからなんとなく聞いた噂とか。言い換えれば、それが周知だからこそ、地元警察も見回って声掛けして、結果、近辺の検挙率が上がるともいえる。2010-2019の前半後半で、ブロック別の売春検挙率はどう変わったのか?明らかに全体量は半減。たいてい下がっていそうだが。
2024.05.04 20:55【QJIS】犯罪箇所ヒートマップ(Crime location heat map)可視化ツールって、入れたデータを取捨選択することはできないんかな?Flourishはテンプレ変換だから対応する列を選択できる。この過程でデータ列を選ぶことはできる。でもFlourish、ワイド→ロング型変更は簡単だったがロング→ワイドはExploratryほど狙った操作ができなかった。QJISは入れたもの全部使う、というよりデータそのものの取り扱いまで私が至っていない。関数をコードで入れる場所はある。地物やら見慣れない言葉も多い。Tableauはデータソース連結、型変換が容易だけど、精査には特化してない。結論、やっぱりデータ分析はクレンジング8割。やってて実感するから先人たちはあれほど断言するんだな。私自身、可視化ツール内でデータは触りたくない。インポ...
2024.05.03 06:30ペルソナ設定、取り出すデータを絞る(Persona setting, limiting data)Chicago_crime公開データを地図に落とし込もうとしたら、犯罪数が多すぎて塩梅がつかめなかった。せっかく再考するならペルソナをたてよう。では、仮に自分がシカゴに住む親で、子供がいたら。10年間の犯罪動向で知りたいもの三つ選ぶ。結論:それでも多かった。次回、さらに絞る。青「OFFENSE INVOLVING CHILDEREN」子供を巻き込んだ犯罪緑「KIDNAPPING」児童誘拐赤「PROSTITUTION」売春
2024.05.02 01:25【QJIS】地図データを探す+ポイント配置(Find map data + point placement)QJISで位置情報を表示するには、シカゴの地図がいるなあ。地図データを入手ポイント配置犯罪多すぎた件1.地図データを入手日本じゃないから、OpenStreetMap(OSM)サービスから地図データをダウンロードします。範囲を決めるためにデータから緯度経度のMAX,MINを計算してみる。latitude: 36.619446395 ~ 42.022709624longitude: -91.686565684 ~ -87.524529378
2024.04.30 07:30【SQL】日付、犯罪タイプ、位置情報を取得(Get date, crime type and location information)位置情報を取り出します。可視化のために情報を制限します。10年ぶん、犯罪上位5タイプ、NULL除外です。使用データ:[ Google Cloud Public Datasets] chicago_crime_data (Chicago Police Department crime data from 2001 to present)期間:2010-01-01 ~ 2020-12-31(10年間)犯罪件数トップ5(THEFT(窃盗), BATTERY(暴行), CRIMINAL DAMAGE(器物損壊), NARCOTICS(麻薬), ASSAULT(脅迫))位置情報(緯度/経度、それぞれ)上記条件で2,075,883件、うち緯度経度NULLは11,3...
2024.04.27 23:20【SQL】ウィンドウ関数:累積相対度数(window function:Cumulative relative degree)WITH句を使わないFROM入れ子形式、ウィンドウ関数SUMを使って累積相対度数を出します。ツールによっては自動計算してくれそうだが。年ごとに最後は1になるので、ダブルチェック兼ねて。使用データ:[ Google Cloud Public Datasets] chicago_crime_data (Chicago Police Department crime data from 2001 to present)期間:2010-01-01 ~ 2020-12-31(10年間)年別の犯罪タイプ上位からの足し上げと累積相対度数(ウィンドウ関数)【SQL】SELECT year, primary_type, sum_year,SUM(sum_year) OV...
2024.04.21 12:00【SQL】 ロング型からワイド型へのデータ変換②(Data conversion from long to wide type(2))①の続き。Flourish での可視化のために、データの形を変えることにした。SQLで書く場合の記述です。使用データ:[ Google Cloud Public Datasets] chicago_crime_data (Chicago Police Department crime data from 2001 to present)期間:2010-01-01 ~ 2020-12-31(10年間)「年」×「犯罪タイプ」×「件数」のロングデータ現状データ(過去記事参照)を、「年」×「犯罪タイプ件数」のワイドデータに変換します。【SQL】一部 SELECT year, MAX(sum_year) AS sum_year_total, MAX(case p...
2024.04.10 01:10【SQL】CTE:年別総数とタイプ別割合(Total number by year and ratio by type)データが随時更新だった、という前回の反省を踏まえて、今後はあらかじめ期間を指定してから作業します。使用データ:[ Google Cloud Public Datasets] chicago_crime_data (Chicago Police Department crime data from 2001 to present)期間:2010-01-01 ~ 2020-12-31(10年間)
2024.04.07 23:00【SQL】CTE:全体件数とタイプ別割合(Total number of cases and ratio by type)ここからは、公開データ「chicago_crime_data」を使って、データの加工と可視化をしていきます。 NULLのないきれいなデータです。全体の件数を出して、タイプ別の割合を表示(サブクエリ)データの開始-終了日時、全体の件数
2024.04.06 07:00KaggleでSQL-PFへの道⑥結論(The Road to SQL Portfolios with Kaggle(6)Conclusion)SQLポートフォリオにKaggleは向かない。理由:Notebook 40分毎のALL RUNGoogle SQL接続pip初回エラーKaggleというプラットフォームコンペとコーディングレベルを魅せる場所はあ。6回かかって結論。理由これだけあればよくないー。。サンクコスト効果は排除、実際試してよかったと思おう。いずれR使って画面上で分析したいときにまた試そう。1.Notebook 40分毎のALL RUNKaggleで書きかけのNotebookを開きっぱなしにして40分たつと、「まだやってる?」とポップアップで問うてくる。大抵SQLやらほかのことと同時進行してるので、すぐ聞かれてしまう。そして毎回のALL RUN、ユーザー多いし仕方ないよね。。