最佳答案
这是我基于 this answer 的方法。另请参阅this notebook用于输出。
import pandas as pd
from rdflib import Graph, URIRef, Namespace
d = {
"source": pd.Series(["Edwin", "Reema", "Ron", "Tomorrow"]),
"target": pd.Series(["football", "karate", "singer", "holiday"]),
"edge": pd.Series(["plays", "plays", "is", "is"]),
}
df = pd.DataFrame(d)
g = Graph()
n = Namespace('http://example.org/foo/')
for inded, row in df.iterrows():
# add triple to rdf-graph
g.add((URIRef(n+row["source"]), URIRef(n+row["edge"]), URIRef(n+row["target"])))
print(g.serialize(format='turtle'))
通过一些额外的可视化代码(基于 https://stackoverflow.com/a/61483971/333403 ),您将得到:
关于python - 如何使用 Python 中的 RDFLIB 库从 pandas 数据帧创建知识图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70875222/