The datasets built here are synthetically generated regression problems,
created using Scikit-Learn's make_regression() method.  This produces
a synthetic set of data with 120 features and characteristics of a linear
relationship, but with some random noise in it to make it realistic.  The
dataset includes a target value (y) and we add an identifier to each row.

The generated dataset is then split into parts, aiming for a 40% / 60%
distribution of the data.  In the horizontal partition datasets, each
has the exact same set of data columns with just the records divided amongst
the parties. In the vertical partition datasets, the number of records
is identical but the columns in each are unique -- except for the common
identifier found in all of them.

Finally, 20% of the datasets are saved independently to act as testing data.

Visually, the data looks something like this:

Complete Data ============================================================

   ID       data_1      data_2      data_3   ...   data_120     y (Target)
   100      ...         ...         ...            ...          0
   101      ...         ...         ...            ...          0
   102      ...         ...         ...            ...          1
   103      ...         ...         ...            ...          0
   104      ...         ...         ...            ...          1
   105      ...         ...         ...            ...          0


Horizontally split datasets ==============================================

 Dataset 1:
   ID       data_1      data_2      data_3   ...   data_120     y (Target)
   100      ...         ...         ...            ...          0
   101      ...         ...         ...            ...          0
   102      ...         ...         ...            ...          1
   103      ...         ...         ...            ...          0

 Dataset 2:
   ID       data_1      data_2      data_3   ...   data_120     y (Target)
   104      ...         ...         ...            ...          1
   105      ...         ...         ...            ...          0


Vertically split datasets ================================================

 Dataset 1:
   ID       data_1      data_2      data_3  ...     y (Target)
   100      ...         ...         ...             0
   101      ...         ...         ...             0
   102      ...         ...         ...             1
   103      ...         ...         ...             0
   104      ...         ...         ...             1
   105      ...         ...         ...             0

 Dataset 2:
   ID       ...     data_119    data_120
   100              ...         ...
   101              ...         ...
   102              ...         ...
   103              ...         ...
   104              ...         ...
   105              ...         ...
