# This file documents the differences between version 1.* and 2.* # * X and newX do not need to be data.frame class objects, the SuperLearner function does not force a conversion with as.data.frame(). Since the conversion does not take place, it is possible to create your own wrappers that use X and newX as a matrix without error. But most (if not all) of the built in wrappers assume they are data frames. * The check for factors in X has been dropped. You might run into problems with rare levels that might not be present in all V folds. * The user can now specify a list with the row numbers for the V-fold cross-validation step. The name of the list is validRows and should be a list of length V with each element in the list containing a numeric vector with the row numbers for the corresponding validation fold. * Added write.SL.template() and write.screen.template(). These functions generate a new file containing the template text. * The user can now create their own loss functions and methods to combine the individual learners. See write.method.template() for details on the required format and syntax. * Added functions mcSuperLearner and snowSuperLearner for parallel computations based on the multicore package and the snow package, respectively. Additionally, CV.SuperLearner has the new argument, parallel, for the same effect. * The syntax of the wrappers has changed. For example, Y.temp is now Y, X.temp is now X. Check out ?write.SL.template() for details. * All cross-validation controls, like V, are now in the list cvControl. See ?SuperLearner for details. * The package contains fewer built-in wrappers. The built-in wrappers are intended to be a starting guide to building your own wrappers. I've also created a new package called SuperLearnerExtra with helpful functions for creating more wrappers, available at https://github.com/ecpolley/SuperLearnerExtra