Read in crime data
crime <- read.csv("nycrime.csv", stringsAsFactors = FALSE)
head(crime)
## Crime Comp_Model_PS_327 Angelo_Patri Bronx_House_Bronx_Green
## 1 Burglary 140 168 121
## 2 Fel_ Assault 472 390 197
## 3 G.L.A. 70 64 86
## 4 GrLarceny 485 327 299
## 5 Housing 36 27 47
## 6 Misd_Sex_Crimes 779 692 353
## Jackie_Robinson Franklin_K_Lane Rockaway_Collegiate Kappa_Vi
## 1 246 644 96 111
## 2 112 263 56 254
## 3 48 151 18 27
## 4 289 709 151 164
## 5 3 203 20 85
## 6 415 1133 162 356
library(tidyr)
crime_long <- crime %>% gather(location, incidents, -Crime)
head(crime_long)
## Crime location incidents
## 1 Burglary Comp_Model_PS_327 140
## 2 Fel_ Assault Comp_Model_PS_327 472
## 3 G.L.A. Comp_Model_PS_327 70
## 4 GrLarceny Comp_Model_PS_327 485
## 5 Housing Comp_Model_PS_327 36
## 6 Misd_Sex_Crimes Comp_Model_PS_327 779
Go back to wide
head(crime_long %>% spread(location, incidents))
## Crime Angelo_Patri Bronx_House_Bronx_Green Comp_Model_PS_327
## 1 Burglary 168 121 140
## 2 Fel_ Assault 390 197 472
## 3 G.L.A. 64 86 70
## 4 GrLarceny 327 299 485
## 5 Housing 27 47 36
## 6 Misd_Sex_Crimes 692 353 779
## Franklin_K_Lane Jackie_Robinson Kappa_Vi Rockaway_Collegiate
## 1 644 246 111 96
## 2 263 112 254 56
## 3 151 48 27 18
## 4 709 289 164 151
## 5 203 3 85 20
## 6 1133 415 356 162
But you don’t need to convert back to wide to transpose, you can take the long data frame and spread on crime back to wide.
head(crime_long %>% spread(Crime, incidents))
## location Burglary Fel_ Assault G.L.A. GrLarceny Housing
## 1 Angelo_Patri 168 390 64 327 27
## 2 Bronx_House_Bronx_Green 121 197 86 299 47
## 3 Comp_Model_PS_327 140 472 70 485 36
## 4 Franklin_K_Lane 644 263 151 709 203
## 5 Jackie_Robinson 246 112 48 289 3
## 6 Kappa_Vi 111 254 27 164 85
## Misd_Sex_Crimes MisdAssault Murder Petit_Larceny Rape Robbery
## 1 692 28 10 759 24 303
## 2 353 23 2 635 18 138
## 3 779 55 9 1177 16 311
## 4 1133 51 16 1352 43 423
## 5 415 28 3 613 7 150
## 6 356 21 5 342 12 126
## Shooting_Vic. ShootingInc Total_Violent_Crime
## 1 26 31 1286
## 2 5 5 861
## 3 24 27 1503
## 4 38 45 2249
## 5 13 17 855
## 6 18 21 699