I have written this function to re-sample my data for class imbalance learning, but when i run it gives me factor level [2] is duplicated, OR Error in adj.formula(formula, data) : object 'originalData' not found.
SampleData<-function(originalData, ch)
{
  if(ch==1)
  {
    training<-ovun.sample(defects~.,data=originalData, method = "over", N=nrow(originalData[originalData$defects=="FALSE",])*2)$data
  }
  else if(ch == 2)
  {
    data <- ovun.sample(defects~.,seed = 54321,data=originalData, method = "under", N=nrow(originalData[originalData$defects=="TRUE",])*2)$data
  }
  else if(ch == 3)
  {
    data <- ovun.sample(defects~.,seed = 54321,data=originalData, method = "both", p = 0.5, N=nrow(originalData))$data
  }
  else if(ch == 4)
  {
    data<-SMOTE(defects~.,data=originalData,seed = 54321, perc.over = 200, perc.under = 100, k = 5)
  }
  else if(ch == 5)
  {
    data<- ROSE(defects ~ ., data  = originalData,seed = 54321,N=nrow(originalData))$data
  }
  else
  {
    data <- originalData
  }
  return(data)
}
