code: def export(id, local=False, scrub_pii=False):
      
  
      print("Preparing to export the data...")
  
      if local:
          db_uri = db.db_url
      else:
          db_uri = HerokuApp(id).db_uri
  
      # Create the data package if it doesn't already exist.
      subdata_path = os.path.join("data", id, "data")
      try:
          os.makedirs(subdata_path)
  
      except OSError as e:
          if e.errno != errno.EEXIST or not os.path.isdir(subdata_path):
              raise
  
      # Copy in the data.
      copy_db_to_csv(db_uri, subdata_path, scrub_pii=scrub_pii)
  
      # Copy the experiment code into a code/ subdirectory.
      try:
          shutil.copyfile(
              os.path.join("snapshots", id + "-code.zip"),
              os.path.join("data", id, id + "-code.zip"),
          )
  
      except Exception:
          pass
  
      # Copy in the DATA readme.
      # open(os.path.join(id, "README.txt"), "a").close()
  
      # Save the experiment id.
      with open(os.path.join("data", id, "experiment_id.md"), "a+") as file:
          file.write(id)
  
      # Zip data
      src = os.path.join("data", id)
      dst = os.path.join("data", id + "-data.zip")
      archive_data(id, src, dst)
  
      cwd = os.getcwd()
      data_filename = "{}-data.zip".format(id)
      path_to_data = os.path.join(cwd, "data", data_filename)
  
      # Backup data on S3 unless run locally
      if not local:
          bucket = user_s3_bucket()
          bucket.upload_file(path_to_data, data_filename)
          url = _generate_s3_url(bucket, data_filename)
  
          # Register experiment UUID with dallinger
          register(id, url)
  
      return path_to_data
docs: Export data from an experiment.