From 7a50dee2994d145a4151e67698771bb370c73be5 Mon Sep 17 00:00:00 2001
From: Laura DeCicco <ldecicco@usgs.gov>
Date: Thu, 3 Jul 2014 14:25:30 -0500
Subject: [PATCH] Vectorized padVariable.

---
 R/padVariable.r | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/R/padVariable.r b/R/padVariable.r
index b97c1915..0f2b04f5 100644
--- a/R/padVariable.r
+++ b/R/padVariable.r
@@ -10,11 +10,13 @@
 #' @examples
 #' pCode <- '10'
 #' correctPCode <- padVariable(pCode,5)
+#' pCodes <- c('100','1000','0','12345','1565465465465465')
+#' correctPCodes <- padVariable(pCodes,5)
 padVariable <- function(x,padTo){
+  if(padTo <= 1) return(x)
   numDigits <- nchar(x)
-  if ((padTo-numDigits)>0){
-    leadingZeros <- paste(rep("0",(padTo-numDigits)),collapse="",sep="")
-    x <- paste(leadingZeros,x,sep="")
-  }
+  padding <- padTo-numDigits
+  padingZeros <- sapply(padding[padding > 0], function(y) paste(rep("0",y),collapse="",sep=""))
+  x[padding > 0] <- paste(padingZeros,x[padding > 0],sep="")
   return(x)
 }
-- 
GitLab