Applies ToRevolution Analytics

Pour remplacer toutes les valeurs de NA par zéro ou d’autres contenus, il est nécessaire de transformer les données à partir d’un jeu de données d’entrée à un jeu de données de sortie à l’aide de la fonctionrxDataStep.Vous trouverez ci-dessous un exemple de script permettant de remplacer toutes les NA dans le fichier xdf « AirlineDemoSmall.xdf » :

# Create a data frame with missing valuesset.seed(17)myDataF <- data.frame(x = rnorm(100), y = runif(100), z = rgamma(100, shape = 2))xmiss <- seq.int(from = 5, to = 100, by = 5)ymiss <- seq.int(from = 2, to = 100, by = 5)myDataF$x[xmiss] <- NAmyDataF$y[ymiss] <- NA# Convert into a xdfmyDataNA<-file.path(getwd(),"myDataNA.xdf")trsfxdf<-rxDataStep(inData=myDataF,outFile=myDataNA,overwrite=TRUE)writeLines("\n\nXdf Generated with random NA values")print(rxGetInfo(myDataF, n = 15)$data)     # Test ouput data #### Use from here if there is an existing xdf.## replace myDataNA with your xdf file##writeLines("\n\nVariables that contains NA values (Missing Observations)")(mySum <- rxSummary(~., data = myDataNA)$sDataFrame)# Find variables that are missingtransVars <- mySum$Name[mySum$MissingObs > 0]print(transVars) #Test detected variables# create a function to replace NA vals with meanNAreplace <- function(dataList) {        replaceFun <- function(x) {              x[is.na(x)] <- replaceValue              return(x)        } dataList <- lapply(dataList, replaceFun) return(dataList)}#myDataRMV<-file.path(getwd(),"myDataRMV.xdf")       # Replace Missing Value trsfxdf<- rxDataStep(inData = myData1, outFile = myDataRMV,     transformFunc = NAreplace,      transformVars = transVars,     transformObjects = list(replaceValue = "REPLACED MISSING VALUE"),     overwrite=TRUE)writeLines("\n\nTransformed xdf with NA replaced by Value")print(rxGetInfo(myDataRMV, n=15)$data)     # Test output data

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.