code: def check_columns_exist(actual, expected):
      missing_features = expected.difference(actual)
      if len(missing_features) != 0:
          raise ValueError(
              f"{len(missing_features)} features are missing from data: {missing_features.tolist()}"
          )
  
file_path: scikit-survival/sksurv/preprocessing.py
imports: from sklearn.base import BaseEstimator, TransformerMixin
  from sklearn.utils.validation import _check_feature_names_in, check_is_fitted
  from .column import encode_categorical
label_desc: Use image node_id 1 for calling a global function with example usage: check_columns_exist(actual, expected) without return types