The difficulties of maintaining a blog have come to light. This is my first,
and maybe only, post for 2020. I had high hopes initially for this to thrive,
but alas, life happens… But here is my little note for 2020, a small snippet
of code to speed up your slow R analysis.
library ( parallel )
library ( MASS )
library ( foreach )
library ( doParallel )
# Choose how to utilize resources.
# Do not use all your computing power for this. Your system will freeze!
# detectCores tells you how much power you have.
# - 2 says, "Hey China, leave 2 cores out of this"
numCores <- detectCores () - 2
numCores
registerDoParallel ( numCores )
# A simple plotting example that uses more than one processor
# to mindlessly plot over 70 variables. Not a good strategy
colnames <- c ( names ( df )[ 10 : 62 ], names ( df )[ 71 : 76 ])
plot_list = list ()
for ( i in colnames )
{
plt <- ggplot ( df , aes_string ( x = "Month" , y = i , group = "Month" , color = "MeanDbz.dBZ." )) +
geom_jitter ( alpha = 0.2 ) +
stat_boxplot ( geom = 'errorbar' ) + geom_boxplot () +
ggtitle ( paste ( "Brazil -" , i )) + ylab ( paste ( i )) + xlab ( "Month" ) +
xlim ( "1" , "2" , "3" , "4" , "5" , "6" , "7" , "8" , "9" , "10" , "11" , "12" ) +
scale_fill_viridis_c () +
labs ( fill = "Mean DbZ" ) + guides ( color = FALSE )
plot_list [[ i ]] = plt
}
foreach ( i = colnames ) %dopar% {
file_name = paste ( "Brazil_Month" , i , ".png" , sep = "" )
png ( file_name , width = 8 * 500 , height = 4 * 500 , res = 300 )
print ( plot_list [[ i ]])
dev.off ()
}
stopImplicitCluster ()