python对GDELT生成简单知识图谱概念图

用python对GDELT events数据中的actor1Name、actor2Name、eventCode字段生成简单的知识图谱图概念图并可视化。

import numpy as np
import pandas as pd
import networkx as nx #图网络包
import matplotlib.pyplot as plt #绘图的包
from mpl_toolkits.mplot3d import Axes3D #3D绘图的包

#代码运行前需自行前往GDELT官网下载数据
data = pd.read_csv(r'E:/WorkSpace/data/GDELT2.0/20231007081500.export.csv', 
	delimiter='\t', encoding='utf-8', low_memory=False, 
	header=None, dtype=str) #保留表头, 读取类型为str
source = []
target = []
relation = []
for line in data.values:
    actor1_name = line[6]
    event_code = line[26]
    actor2_name = line[16]
    if(pd.isna(actor1_name) | pd.isna(event_code) | pd.isna(actor2_name)):
        continue #过滤掉有nan值的数据
    source.append(actor1_name)
    target.append(actor2_name)
    relation.append(event_code)

kg_df = pd.DataFrame({
   'source':source, 'target':target, 'relation':relation
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值