def split_dataset(dataset, ratio=0.8):
  """ Split the dataset according to the ratio of training/test sets.
  
  Parameters
  ----------
  dataset: dict
    dict of lists, including omic profiles, cancer types, sensitivities, sample names
  ratio: float
    size(train_set)/size(train_set+test_set)

  Returns
  -------
  train_set, test_set: dict

  """

  num_sample = len(dataset["tmr"])
  num_train_sample = int(num_sample*ratio)

  train_set = {k:dataset[k][0:num_train_sample] for k in dataset.keys()}
  test_set = {k:dataset[k][num_train_sample:] for k in dataset.keys()}

  return train_set, test_set