如何将 Pandas DataFrame 转换为 RDF(资源描述框架)?

How to convert Pandas DataFrame to RDF (Resource Description Framework)?

我正在寻找将 Pandas DataFrames 转换为 Python 中的 RDF 数据的方法。我知道以下 Python 模块(我知道如何 Google!),但它们对我不起作用: rdfpandas pandasrdf 都显得不成熟。我有两个问题。在 rdfpandas 的情况下,我无法安装并且没有示例和文档不足。在 pandasrdf 的情况下,该示例不起作用并崩溃。我可以修复它,但是 RDF 文件有零个三元组,所以结果是无用的。我宁愿不必将数据写出到我稍后必须注入的一些中间数据文件中。 Pandas->numpy->RDF 我想应该没问题。有没有人有将 Pandas DataFrame 转换为 RDF 的工作示例,采用一种不涉及手工黑魔法包安装的常见序列化格式?

更新版本的 RdfPandas 已经发布,您可以尝试一下,看看它是否涵盖您的用例:https://rdfpandas.readthedocs.io/en/1.0.0/

下面是基于 https://github.com/cadmiumkitty/capability-models/blob/master/notebooks/investment_management_capabilities.csv 的示例

import pandas as pd
import rdfpandas

df = pd.read_csv('investment_management_capabilities.csv', index_col = '@id', keep_default_na = True)
g = rdfpandas.to_graph(df)
ttl = g.serialize(format = 'turtle')
with open('investment_management_capabilities.ttl', 'wb') as file:
   file.write(ttl)

执行转换的代码非常少,位于此处(只需查看 to_graph 方法)https://github.com/cadmiumkitty/rdfpandas/blob/master/rdfpandas/graph.py,因此您可以直接将其用作创建自己的转换逻辑的灵感.