code: public static void prepareSplits(final String url, final int nFolds, final String inFile, final String folder, final String outPath) {
          DataDownloader dd = new DataDownloader(url, folder);
          dd.downloadAndUnzip();
  
          boolean perUser = true;
          long seed = SEED;
          Parser<Long, Long> parser = new MovielensParser();
  
          DataModelIF<Long, Long> data = null;
          try {
              data = parser.parseData(new File(inFile));
          } catch (IOException e) {
              e.printStackTrace();
          }
  
          new IterativeCrossValidationSplitter<Long, Long>(nFolds, perUser, seed, outPath).split(data);
          File dir = new File(outPath);
          if (!dir.exists()) {
              if (!dir.mkdir()) {
                  System.err.println("Directory " + dir + " could not be created");
                  return;
              }
          }
  
      }
docs: Downloads a dataset and stores the splits generated from it.
  
  @param url url where dataset can be downloaded from
  @param nFolds number of folds
  @param inFile file to be used once the dataset has been downloaded
  @param folder folder where dataset will be stored
  @param outPath path where the splits will be stored