code: def orc(self, path, mode=None, partitionBy=None, compression=None):
          
          self.mode(mode)
          if partitionBy is not None:
              self.partitionBy(partitionBy)
          self._set_opts(compression=compression)
          self._jwrite.orc(path)
docs: Saves the content of the :class:`DataFrame` in ORC format at the specified path.
  
          :param path: the path in any Hadoop supported file system
          :param mode: specifies the behavior of the save operation when data already exists.
  
              * ``append``: Append contents of this :class:`DataFrame` to existing data.
              * ``overwrite``: Overwrite existing data.
              * ``ignore``: Silently ignore this operation if data already exists.
              * ``error`` or ``errorifexists`` (default case): Throw an exception if data already \
                  exists.
          :param partitionBy: names of partitioning columns
          :param compression: compression codec to use when saving to file. This can be one of the
                              known case-insensitive shorten names (none, snappy, zlib, and lzo).
                              This will override ``orc.compress`` and
                              ``spark.sql.orc.compression.codec``. If None is set, it uses the value
                              specified in ``spark.sql.orc.compression.codec``.
  
          >>> orc_df = spark.read.orc('python/test_support/sql/orc_partitioned')
          >>> orc_df.write.orc(os.path.join(tempfile.mkdtemp(), 'data'))