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) [源代码]
将 DataFrame 渲染到 XML 文档。
1.3.0 新版功能。
参数: | path_or_buffer:str, path对象 或 file-like 对象 或 None,默认为None 字符串,path对象(实现 或实现 index: 是否在XML文档中包含index。 root_name: XML文档中根元素的名称。 row_name: XML文档中row元素的名称。 na_rep: 缺失的数据表示。 attr_cols:list-like, 可选 要作为属性写入行元素的列表。分层列将用下划线分隔不同的级别。 elem_cols:list-like, 可选 要作为子元素写入的列的列表。默认情况下, 所有列输出为row元素的子列。分层列将用下划线分隔不同的级别。 namespaces: 在根元素中定义的所有名称空间。字典的键应该是字典对应uri的前缀名和值。 默认名称空间应该被赋予空的字符串键。例如, namespaces = {"": "https://example.com"} prefix: 名称空间前缀,用于文档中的每个元素和/或属性。 应该是 encoding: 结果文档的编码。 xml_declaration: pretty_print: 是否应该使用缩进和换行来漂亮地打印输出。 parser: stylesheet: URL、类文件对象或包含用于转换原始XML 输出的XSLT脚本的原始字符串。 脚本应该使用原始输出的元素和属性布局。 该参数要求安装 compression: 用于实时压缩输出数据。如果'infer'和' path_or_buffer '类路径, 则检测以下扩展的压缩:‘.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, 或 ‘.zst’(否则没有压缩)。 设置为 键 其他键值对分别为 或 可以通过下面的方法来更快地压缩并创建一个可复制的gzip归档文件:
在1.4.0版更改:Zstandard支持。 storage_options:dict, 可选 对于特定存储链接有意义的额外选项, 例如,主机、端口、用户名、密码等。对于HTTP(S) url, 键值对作为头选项转发到 和" gcs:// "开头)键-值对被转发到 请参阅 |
返回: |
如果 否则返回 |
例如,
>>> 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") https://example.com"> 0square3604.01circle3602triangle1803.0