Chicago crime 2022 hours / cores

In the multiway network MN the property hour is considered as a weight. We move it to ways.

> setwd("C:/Users/vlado/DL/data/multi/chicago")
> library(jsonlite)
> library(Polychrome)
> library(magrittr)
> source("https://raw.githubusercontent.com/bavla/ibm3m/master/multiway/MWnets.R")
> MN <- fromJSON("https://raw.githubusercontent.com/bavla/ibm3m/master/data/ChicagoCrime0.json")
> str(MN)
> MN$ways$hour <- "hour"
> MN$nodes$hour <- data.frame(ID=paste(0:23,"H"))
> MT <- MN
> L <- MT$links
> Links <- aggregate(L$w,by=list(L$primary,L$location,L$hour),FUN=sum)
> names(Links) <- c("primary","location","hour","w")
> MT$links <- Links
> ways <- c("primary","location","hour"); Ways <- as.list(ways); names(Ways) <- ways
> MT$ways <- Ways
> MT$nodes <- list(primary=MT$nodes$primary,location=MT$nodes$location,hour=MT$nodes$hour)
> MT$info$network <- "ChicagoCrime22H"
> MT$info$title <- "City of Chicago incidents of crime 2022 / hours"
> MT$info$creator <- "V. Batagelj"
> MT$nodes$location$ID[1] <- "missing"
> str(MT)
List of 6
 $ format: chr "MWnets"
 $ info  :List of 6
  ..$ network: chr "ChicagoCrime22H"
  ..$ title  : chr "City of Chicago incidents of crime 2022 / hours"
  ..$ by     : chr "DF2MWN"
  ..$ date   : chr "Mon Jan 30 04:02:07 2023"
  ..$ URL    : chr "https://www.chicago.gov/city/en/dataset/crime.html"
  ..$ creator: chr "V. Batagelj"
 $ ways  :List of 3
  ..$ primary : chr "primary"
  ..$ location: chr "location"
  ..$ hour    : chr "hour"
 $ nodes :List of 3
  ..$ primary :'data.frame':    31 obs. of  1 variable:
  .. ..$ ID: chr [1:31] "ARSON" "ASSAULT" "BATTERY" "BURGLARY" ...
  ..$ location:'data.frame':    135 obs. of  1 variable:
  .. ..$ ID: chr [1:135] "missing" "ABANDONED BUILDING" "AIRCRAFT" "AIRPORT BUILDING NON-TERMINAL - NON-SECURE AREA" ...
  ..$ hour    :'data.frame':    24 obs. of  1 variable:
  .. ..$ ID: chr [1:24] "0 H" "1 H" "2 H" "3 H" ...
 $ links :'data.frame': 13515 obs. of  4 variables:
  ..$ primary : int [1:13515] 9 23 6 7 8 23 26 30 31 3 ...
  ..$ location: int [1:13515] 1 1 2 2 2 2 2 2 2 3 ...
  ..$ hour    : int [1:13515] 0 0 0 0 0 0 0 0 0 0 ...
  ..$ w       : int [1:13515] 52 1 2 1 1 2 1 2 1 1 ...
 $ data  : list()
> write(toJSON(MT),"ChicagoCrimeH.json")

> n1 <- nrow(MT$nodes$primary); n2 <- nrow(MT$nodes$location); n3 <- nrow(MT$nodes$hour)
> C1 <- 1:n1; C2 <- 1:n2; C3 <- 1:n3
> F12 <- sapply(1:n1,function(u) pRel(MT,u,C2,"primary","location",way3="hour"))
> F21 <- sapply(1:n2,function(v) pRel(MT,v,C1,"location","primary",way3="hour"))
> table(F12)
F12
 3  4  6  7  9 18 21 22 23 24 
 1  1  1  1  1  1  1  1  3 20 
> table(F21) 
F21
 1  2  3  4  5  6  8  9 11 12 13 14 15 17 18 19 20 21 22 23 24 
16  4  4  2  1  5  2  1  2  5  4  4  1  2  1  3  4  2  4 14 54 
> PRel <- function(MN,u,C,way1,way2,...) pRel(MN,u,C,way1,way2,way3="hour",...)
> Rcore <- Gen2modeCore(MT,"primary","location",PRel,PRel,23,23)
> Rcore
$core1
 [1]  1  2  3  4  5  6  7  8  9 11 14 15 17 18 21 23 24 26 27 28 29 30 31

$core2
 [1]   1   2   4   6   8   9  12  13  17  19  21  22  24  25  27  29  34  36  38  41  42  47  48  49
[25]  52  53  54  55  57  59  60  61  62  64  65  66  72  74  75  77  78  80  86  88  90  91  92  93
[49]  95  98 103 104 105 106 107 112 113 114 116 117 118 120 122 126 127 131 132 134

> Rcore <- Gen2modeCore(MT,"primary","location",PRel,PRel,24,24)
> Rcore
$core1
 [1]  1  2  3  4  5  6  7  8  9 11 17 18 21 23 26 27 28 29 30 31

$core2
 [1]   1   8  13  17  19  21  24  25  27  34  36  38  41  42  47  48  49  52  53  55  57  59  60  62
[25]  64  65  66  72  74  75  77  78  80  88  90  91  92  93  95  98 103 104 105 106 107 112 116 117
[49] 120 122 126 127 132 134

> Cprim <- Rcore$core1; Cloc <- Rcore$core2
> FCp <- sapply(Cprim,function(u) pRel(MT,u,Cloc,"primary","location",way3="hour"))
> names(FCp) <- MT$nodes$primary$ID[Cprim]
> rev(sort(FCp))
                WEAPONS VIOLATION                             THEFT 
                               24                                24 
                         STALKING                       SEX OFFENSE 
                               24                                24 
                          ROBBERY            PUBLIC PEACE VIOLATION 
                               24                                24 
                    OTHER OFFENSE        OFFENSE INVOLVING CHILDREN 
                               24                                24 
                        NARCOTICS               MOTOR VEHICLE THEFT 
                               24                                24 
                         HOMICIDE                DECEPTIVE PRACTICE 
                               24                                24 
                CRIMINAL TRESPASS           CRIMINAL SEXUAL ASSAULT 
                               24                                24 
                  CRIMINAL DAMAGE CONCEALED CARRY LICENSE VIOLATION 
                               24                                24 
                         BURGLARY                           BATTERY 
                               24                                24 
                          ASSAULT                             ARSON 
                               24                                24 
> FCl <- sapply(Cloc,function(u) pRel(MT,u,Cprim,"location","primary",way3="hour"))
> names(FCl) <- MT$nodes$location$ID[Cloc]
> rev(sort(FCl))
                                 WAREHOUSE                     VEHICLE NON-COMMERCIAL 
                                        24                                         24 
                      VEHICLE - COMMERCIAL                          VACANT LOT / LAND 
                                        24                                         24 
                     TAVERN / LIQUOR STORE                                     STREET 
 ...
vlado/work/2m/mwn/x3d/cchrcore.txt · Last modified: 2023/01/31 02:38 by vlado
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki