code: def update_dataset(self, dataset, fields, retry=DEFAULT_RETRY):
          
          partial = dataset._build_resource(fields)
          if dataset.etag is not None:
              headers = {"If-Match": dataset.etag}
          else:
              headers = None
          api_response = self._call_api(
              retry, method="PATCH", path=dataset.path, data=partial, headers=headers
          )
          return Dataset.from_api_repr(api_response)
docs: Change some fields of a dataset.
  
          Use ``fields`` to specify which fields to update. At least one field
          must be provided. If a field is listed in ``fields`` and is ``None`` in
          ``dataset``, it will be deleted.
  
          If ``dataset.etag`` is not ``None``, the update will only
          succeed if the dataset on the server has the same ETag. Thus
          reading a dataset with ``get_dataset``, changing its fields,
          and then passing it to ``update_dataset`` will ensure that the changes
          will only be saved if no modifications to the dataset occurred
          since the read.
  
          Args:
              dataset (google.cloud.bigquery.dataset.Dataset):
                  The dataset to update.
              fields (Sequence[str]):
                  The properties of ``dataset`` to change (e.g. "friendly_name").
              retry (google.api_core.retry.Retry, optional):
                  How to retry the RPC.
  
          Returns:
              google.cloud.bigquery.dataset.Dataset:
                  The modified ``Dataset`` instance.