hanlp句法分析

from pyhanlp import *
HanLP.Config.ShowTermNature = False
a=HanLP.parseDependency('08年公司毛利率40.6%,比07年下降仅1个百分点,主要源于大麦、酒花和包装物成本上升。')
for i in a:
        print(i)

结果

1	08年	08年	nt	t	_	2	定中关系	_	_
2	公司	公司	n	n	_	3	定中关系	_	_
3	毛利率	毛利率	n	n	_	4	主谓关系	_	_
4	40.6%	40.6%	m	m	_	0	核心关系	_	_
5	,	,	wp	w	_	4	标点符号	_	_
6	比	比	p	p	_	9	状中结构	_	_
7	07	07	m	m	_	8	定中关系	_	_
8	年	年	q	q	_	6	介宾关系	_	_
9	下降	下降	v	v	_	4	并列关系	_	_
10	仅	仅	d	d	_	11	定中关系	_	_
11	1	1	m	m	_	12	定中关系	_	_
12	个	个	q	q	_	13	定中关系	_	_
13	百分点	百分点	n	n	_	9	动宾关系	_	_
14	,	,	wp	w	_	9	标点符号	_	_
15	主要	主要	d	d	_	16	状中结构	_	_
16	源于	源于	v	v	_	9	并列关系	_	_
17	大麦	大麦	n	n	_	23	定中关系	_	_
18	、	、	wp	w	_	19	标点符号	_	_
19	酒花	酒花	n	n	_	17	并列关系	_	_
20	和	和	c	c	_	21	左附加关系	_	_
21	包装	包装	v	vn	_	22	定中关系	_	_
22	物	物	Ng	Ng	_	17	并列关系	_	_
23	成本上升	成本上升	nz	nz	_	16	动宾关系	_	_
24	。	。	wp	w	_	4	标点符号	_	_

这里就有一个问题

当你想调用其中一列信息的时候

比如
​​​​​​​from pyhanlp import *
HanLP.Config.ShowTermNature = False
a=HanLP.parseDependency('08年公司毛利率40.6%,比07年下降仅1个百分点,主要源于大麦、酒花和包装物成本上升。')
for i in range(len(a)):
        print(a[i][0])
可以看见是无法调用的

TypeError: 'com.hankcs.hanlp.corpus.dependency.CoNll.CoNLLSentence' object does not support indexing

我一直想找到CoNLLSentence的参数表,以便于能提起一列一列数据

开始并没有找到完整的

只找到

每个词的分词结果

a.LEMMA
以及不知道什么的标签
a.HEAD

这就很离谱,我在官方的说明文档中,并没有找到对每一列的说明

我甚至都怀疑hanlp是不是没有搞这个列名

后面自己不断尝试不同函数对结果进行操作

终于找到提取句法列和分词列的方法

d=[]#准备一个空的list,保存head的列
b=list(a)#输出强制转换为list
for i in b:
    c=str(i).split()#a的每个元素强制转换为string
    d.append(c[6])#加入list中

最后得到d

['2',
 '3',
 '4',
 '0',
 '4',
 '9',
 '8',
 '6',
 '4',
 '11',
 '12',
 '13',
 '9',
 '9',
 '16',
 '9',
 '23',
 '19',
 '17',
 '21',
 '22',
 '17',
 '16',
 '4']

这是hanlp的依存句法分析的head列的list

如果官方有文档,希望看见文档的朋友们能发我一下链接,我还是觉得官方应该会给个直接调用的方法,不可能让我们自己破解他们的输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值