Spec-Zone.ru › pandas 1

pandas.DataFrame.to_xml

DataFrame.to_xml(path_or_buffer=None, index=True, root_name='data', row_name='row', na_rep=None, attr_cols=None, elem_cols=None, namespaces=None, prefix=None, encoding='utf-8', xml_declaration=True, pretty_print=True, parser='lxml', stylesheet=None, compression='infer', storage_options=None)[source]

Отображение DataFrame в XML-документ.

Новое в версии 1.3.0.

Параметры
path_or_buffer:str, объект пути, файл-подобный объект или None, по умолчанию None

Строка, объект пути (реализующий os.PathLike[str]), или файл-подобный объект, реализующий функцию write(). Если None, результат возвращается как строка.

index:bool, по умолчанию True

Включать ли индекс в XML-документ.

root_name:str, по умолчанию ‘data’

Имя корневого элемента в XML-документе.

row_name:str, по умолчанию ‘row’

Имя элемента строки в XML-документе.

na_rep:str, необязательно

Представление отсутствующих данных.

attr_cols:list-like, необязательно

Список столбцов для записи в качестве атрибутов в элементе строки. Иерархические столбцы будут сглажены с использованием подчеркивания в качестве разделителя разных уровней.

elem_cols:list-like, необязательно

Список столбцов для записи в качестве дочерних элементов в элементе строки. По умолчанию все столбцы выводятся как дочерние элементы элемента строки. Иерархические столбцы будут сглажены с использованием подчеркивания в качестве разделителя разных уровней.

namespaces:dict, необязательно

Все пространства имён, которые должны быть определены в корневом элементе. Ключи словаря должны быть именами префиксов, а значения словаря — соответствующими URI. Должны быть указаны пространства имён по умолчанию с ключом пустой строки. Например,

namespaces = {"": "https://example.com"}
prefix:str, необязательно

Префикс пространства имён, который будет использоваться для каждого элемента и/или атрибута в документе. Он должен быть одним из ключей в словаре namespaces.

encoding:str, по умолчанию ‘utf-8’

Кодировка результирующего документа.

xml_declaration:bool, по умолчанию True

Включать ли XML-декларацию в начале документа.

pretty_print:bool, по умолчанию True

Выводить ли отформатированный вывод с отступами и разрывами строк.

parser:{‘lxml’,’etree’}, по умолчанию ‘lxml’

Модуль парсера, который нужно использовать для построения дерева. Поддерживаются только ‘lxml’ и ‘etree’. С помощью ‘lxml’ поддерживается возможность использования XSLT-стилей.

stylesheet:str, объект пути или файл-подобный объект, необязательно

URL, файл-подобный объект или необработанная строка, содержащая скрипт XSLT, используемый для преобразования необработанного XML-вывода. Сценарий должен использовать макет элементов и атрибутов из исходного вывода. Этот аргумент требует установки lxml. В настоящее время поддерживаются только скрипты XSLT 1.0, а не более поздних версий.

compression:str или dict, по умолчанию ‘infer’

Для сжатия выходных данных на лету. Если ‘infer’ и ‘path_or_buffer’ — ссылка на файл, то определить сжатие по следующим расширениям: ‘.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, ‘.zst’, ‘.tar’, ‘.tar.gz’, ‘.tar.xz’ или ‘.tar.bz2’ (иначе сжатие не используется). Установить в значение None для отсутствия сжатия. Также может быть словарем с ключом 'method', установленным в одно из значений {'zip', 'gzip', 'bz2', 'zstd', 'tar'}, и другие пары ключ-значение передаются zipfile.ZipFile, gzip.GzipFile, bz2.BZ2File, zstandard.ZstdCompressor или tarfile.TarFile, соответственно. Например, для более быстрого сжатия и создания воспроизводимого gzip-архива можно передать следующее: compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}.

Новое в версии 1.5.0: Добавлена поддержка файлов .tar.

Изменено в версии 1.4.0: Поддержка Zstandard.

storage_options:dict, необязательно

Дополнительные параметры, которые имеют смысл для конкретного соединения хранения, например, хост, порт, имя пользователя, пароль и т. д. Для HTTP(S) URL-адресов пары ключ-значение передаются в urllib.request.Request в качестве параметров заголовка. Для других URL-адресов (например, начинающихся с “s3://” и “gcs://”) пары ключ-значение передаются в fsspec.open. Подробнее см. fsspec и urllib, а более подробные примеры параметров хранения см. здесь.

Возвращает
None или str

Если io равно None, возвращает результирующий XML-формат в виде строки. В противном случае возвращает None.

См. также

to_json

Преобразовать объект pandas в JSON-строку.

to_html

Преобразовать DataFrame в HTML.

Примеры

>>> df = pd.DataFrame({'shape': ['square', 'circle', 'triangle'],
...                    'degrees': [360, 360, 180],
...                    'sides': [4, np.nan, 3]})
>>> df.to_xml()  
<?xml version='1.0' encoding='utf-8'?>
<data>
  <row>
    <index>0</index>
    <shape>square</shape>
    <degrees>360</degrees>
    <sides>4.0</sides>
  </row>
  <row>
    <index>1</index>
    <shape>circle</shape>
    <degrees>360</degrees>
    <sides/>
  </row>
  <row>
    <index>2</index>
    <shape>triangle</shape>
    <degrees>180</degrees>
    <sides>3.0</sides>
  </row>
</data>
>>> df.to_xml(attr_cols=[
...           'index', 'shape', 'degrees', 'sides'
...           ])  
<?xml version='1.0' encoding='utf-8'?>
<data>
  <row index="0" shape="square" degrees="360" sides="4.0"/>
  <row index="1" shape="circle" degrees="360"/>
  <row index="2" shape="triangle" degrees="180" sides="3.0"/>
</data>
>>> df.to_xml(namespaces={"doc": "https://example.com"},
...           prefix="doc")  
<?xml version='1.0' encoding='utf-8'?>
<doc:data xmlns:doc="https://example.com">
  <doc:row>
    <doc:index>0</doc:index>
    <doc:shape>square</doc:shape>
    <doc:degrees>360</doc:degrees>
    <doc:sides>4.0</doc:sides>
  </doc:row>
  <doc:row>
    <doc:index>1</doc:index>
    <doc:shape>circle</doc:shape>
    <doc:degrees>360</doc:degrees>
    <doc:sides/>
  </doc:row>
  <doc:row>
    <doc:index>2</doc:index>
    <doc:shape>triangle</doc:shape>
    <doc:degrees>180</doc:degrees>
    <doc:sides>3.0</doc:sides>
  </doc:row>
</doc:data>

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.DataFrame.to_xml.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API