R/BSkyVersion.r

Defines functions BSkyVersion

Documented in BSkyVersion

############################################################
# Just Last Modification Date. Time can also be included
# ver: 2011.w.d  #W starts on Mon=1
############################################################
### title should fit on one line, be written in sentence case, but not end in a full stop
### to print @ in the documentation, escape with one more @ (e.g. @@ prints @)
#' @title BlueSky package version and other details
#'
#' @description Get BlueSky package details along with R session related details.
#'
#'
#' @return prints details about system, R session etc.
#'
#' @examples BSkyVersion()
BSkyVersion<-function(fulldetails=TRUE)
{
	bskyver= "Version: 9.13"
	bskydate="Date: 2025-01-27"
	bskytime="11:01AM"


	if(fulldetails)
	{
		rver = R.Version()
		print("------ BlueSky R package version ------")
		print(bskyver) 
		print(bskydate)
		print(bskytime) 

		cat("\n\n------ R Home ------\n")
		print(R.home())

		cat("\n\n------ R library paths ------\n")
		print(.libPaths()) 

		cat("\n\n------ R version ------\n")
		print(rver)

		cat("\n\n------ R SessionInfo ------\n")
		print(sessionInfo())

		cat("\n\n------ Encoding ------\n")
		print(getOption("encoding"))

		cat("\n\n------ Internationalization ------\n")
		print(l10n_info())

		cat("\n\n------ System Info ------\n")
		print(Sys.info()[c(1:3,5)])

		if(.Platform$OS.type == "windows")
		{ 
			cat("\n\n------ RAM and Drive Info ------\n")
			disks_type <- system('powershell get-physicaldisk', inter=TRUE)
			disks_type = disks_type[c(grep("[0-9]+", disks_type))] 
			
			disks <- system("wmic logicaldisk get size,freespace,caption", inter=TRUE)
			disks <- read.fwf(textConnection(disks[1:(length(disks)-1)]), 
					 widths=c(9, 13, 13), strip.white=TRUE, stringsAsFactors=FALSE)

			colnames(disks) <- disks[1,]
			disks <- disks[-1,]
			orig_names = dimnames(disks)[[2]]
			if(dim(disks)[1] == 1)
			{
			disks <- cbind(disks[,1], t(round(as.numeric(disks[,-c(1)])/(1000*1000*1000), digits = 0)))
			}
			else
			{
			 disks <- cbind(disks[,1], round((apply((disks[,-c(1)]),2, as.numeric))/(1024*1024*1024)))
			}
			dimnames(disks)[[2]] = c("Drives(GB)", orig_names[2:length(orig_names)])
			rownames(disks) <- NULL
			disks = noquote(disks)

			withAutoprint({
			memory.size() # memory (MB) currently used by R
			memory.size(TRUE) # maximum memory (MB) has been used by R in the current session
			memory.limit() # memory (MB) size in the machine 
			disks # different disk drives in the machine
			disks_type # brand and whether SDD or HDD - SDD will say fixed i.e. not removable HDD drive
			})
		}


		# location of R's own temp directory
		cat("\n\n------ R's temp directory ------\n")
		print(tempdir())

		# R's working directory
		cat("\n\n------ R's working directory ------\n")
		print(getwd())

		# finding .Rprofile file path 
		candidates <- c( Sys.getenv("R_PROFILE"),
						 file.path(Sys.getenv("R_HOME"), "etc", "Rprofile.site"),
						  Sys.getenv("R_PROFILE_USER"),
						  file.path(getwd(), ".Rprofile") )
		cat("\n\n------ Rprofile details ------\n")
		Filter(file.exists, candidates)
	}
	else {
		details = paste(bskyver,'\n', bskydate,'\n', bskytime, '\n\nR:\n',R.Version()$version.string,sep='')
		return(invisible(details))
	}
}

# "bskyfrmtobj <- BSkyFormat(bskytempvarname, bSkyFormatAppRequest = TRUE, singleTableOutputHeader = \"c(\"a\")\" )"
# "bskyfrmtobj <- BSkyFormat(bskytempvarname, bSkyFormatAppRequest = TRUE, singleTableOutputHeader = \"c(\\\"a\\\")\" )"


# To find the version of the currently installed, required R packages.
BSkyInstalledReqPkgVer  <-function () 
{
 Rver <- paste("R Ver :", R.Version())

 installedpackages <- installed.packages()[,1]
  
 v1=character(0)
 if(is.element("openxlsx", installedpackages))
	v1 <- paste("openxlsx :", packageVersion("openxlsx"))
 v2=character(0)
 if(is.element("dplyr", installedpackages))	
	v2 <- paste("dplyr :", packageVersion("dplyr"))
	
 v3=character(0)
 if(is.element("haven", installedpackages))		
	v3 <- paste("haven :", packageVersion("haven"))
 
  v4=character(0)
 if(is.element("readr", installedpackages))	
	v4 <- paste("readr :", packageVersion("readr"))
 
  v5=character(0)
 if(is.element("readxl", installedpackages))	
	v5 <- paste("readxl :", packageVersion("readxl"))
 
  v6=character(0)
 if(is.element("data.table", installedpackages))	
	v6 <- paste("data.table :", packageVersion("data.table"))
 
 v7=character(0)
 if(is.element("foreign", installedpackages))	
	v7 <- paste("foreign :", packageVersion("foreign"))

 v8=character(0)
 if(is.element("BlueSky", installedpackages))	
	v8 <- paste("BlueSky :", packageVersion("BlueSky"))
 
  v9=character(0)
 if(is.element("gmodels", installedpackages))	
	v9  <- paste("gmodels :", packageVersion("gmodels"))
 
  v10=character(0)
 if(is.element("GPArotation", installedpackages))	
	v10 <- paste("GPArotation :", packageVersion("GPArotation"))
 
  v11=character(0)
 if(is.element("RcmdrMisc", installedpackages))	
	v11 <- paste("RcmdrMisc :", packageVersion("RcmdrMisc"))
 
  v12=character(0)
 if(is.element("corrplot", installedpackages))	
	v12 <- paste("corrplot :", packageVersion("corrplot"))
 
  v13=character(0)
 if(is.element("ggplot2", installedpackages))	
	v13 <- paste("ggplot2 :", packageVersion("ggplot2"))
 
  v14=character(0)
 if(is.element("ggthemes", installedpackages))	
	v14 <- paste("ggthemes :", packageVersion("ggthemes"))
 
  v15=character(0)
 if(is.element("gplots", installedpackages))	
	v15 <- paste("gplots :", packageVersion("gplots"))
 
  v16=character(0)
 if(is.element("aplpack", installedpackages))	
	v16 <- paste("aplpack :", packageVersion("aplpack"))
 
  v17=character(0)
 if(is.element("car", installedpackages))	
	v17 <- paste("car :", packageVersion("car"))
 
  v18=character(0)
 if(is.element("Rmisc", installedpackages))	
	v18 <- paste("Rmisc :", packageVersion("Rmisc"))
 
  v19=character(0)
 if(is.element("choroplethrMaps", installedpackages))	
	v19 <- paste("choroplethrMaps :", packageVersion("choroplethrMaps"))
 
   v20=character(0)
 if(is.element("choroplethr", installedpackages))	
	v20 <- paste("choroplethr :", packageVersion("choroplethr"))
	
  v21=character(0)
 if(is.element("stringr", installedpackages))	
	v21 <- paste("stringr :", packageVersion("stringr"))
 
  v22=character(0)
 if(is.element("gdata", installedpackages))	
	v22 <- paste("gdata :", packageVersion("gdata"))
	##### added more below
  v23=character(0)
 if(is.element("forecast", installedpackages))	
	v23 <- paste("forecast :", packageVersion("forecast"))

  v24=character(0)
 if(is.element("ggthemes", installedpackages))	
	v24 <- paste("ggthemes :", packageVersion("ggthemes"))

  v25=character(0)
 if(is.element("gplots", installedpackages))	
	v25 <- paste("gplots :", packageVersion("gplots"))	
	
  v26=character(0)
 if(is.element("randomForest", installedpackages))	
	v26 <- paste("randomForest :", packageVersion("randomForest"))

  v27=character(0)
 if(is.element("caret", installedpackages))	
	v27 <- paste("caret :", packageVersion("caret"))

  v28=character(0)
 if(is.element("klaR", installedpackages))	
	v28 <- paste("klaR :", packageVersion("klaR"))

  v29=character(0)
 if(is.element("rpart", installedpackages))	
	v29 <- paste("rpart :", packageVersion("rpart"))

  v30=character(0)
 if(is.element("rpart.plot", installedpackages))	
	v30 <- paste("rpart.plot :", packageVersion("rpart.plot"))

  v31=character(0)
 if(is.element("rattle", installedpackages))	
	v31 <- paste("rattle :", packageVersion("rattle"))

  v32=character(0)
 if(is.element("RJDBC", installedpackages))	
	v32 <- paste("RJDBC :", packageVersion("RJDBC"))

  v33=character(0)
 if(is.element("DescTools", installedpackages))	
	v33 <- paste("DescTools :", packageVersion("DescTools"))

  v34=character(0)
 if(is.element("arules", installedpackages))	
	v34 <- paste("arules :", packageVersion("arules"))

  v35=character(0)
 if(is.element("arulesViz", installedpackages))	
	v35 <- paste("arulesViz :", packageVersion("arulesViz"))

  v36=character(0)
 if(is.element("iplots", installedpackages))	
	v36 <- paste("iplots :", packageVersion("iplots"))

  v37=character(0)
 if(is.element("rJava", installedpackages))	
	v37 <- paste("rJava :", packageVersion("rJava"))

  v38=character(0)
 if(is.element("fastAdaboost", installedpackages))	
	v38 <- paste("fastAdaboost :", packageVersion("fastAdaboost"))

  v39=character(0)
 if(is.element("monomvn", installedpackages))	
	v39 <- paste("monomvn :", packageVersion("monomvn"))

  v40=character(0)
 if(is.element("kernlab", installedpackages))	
	v40 <- paste("kernlab :", packageVersion("kernlab"))




 
 #allver <- c( v1,'\n',v2,'\n',v3,'\n',v4,'\n',v5,'\n',v6,'\n',v7,'\n',v8)
 allver <- list(Rver, v1,v2,v3,v4,v5,v6,v7,v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40)
 return(allver)
}
BlueSkyStatistics/BlueSky documentation built on Jan. 29, 2025, 4:15 p.m.