如何使用 python nltk 获取解析树?

2023-11-23

给出以下句子:

The old oak tree from India fell down.

如何使用 python NLTK 获得句子的以下解析树表示?

(ROOT (S (NP (NP (DT The) (JJ old) (NN oak) (NN tree)) (PP (IN from) (NP (NNP India)))) (VP (VBD fell) (PRT (RP down)))))

我需要一个完整的例子,但我在网上找不到!


Edit

我已经经历过本书章节学习如何使用 NLTK 进行解析,但问题是,我需要一个语法来解析我没有的句子或短语。我已经发现这个 stackoverflow 帖子它还询问了解析语法,但没有令人信服的答案。

所以,我正在寻找一个完整的答案,它可以给我给出一个句子的解析树。


这是使用的替代解决方案StanfordCoreNLP代替nltk。很少有库是建立在StanfordCoreNLP,我个人使用pycorenlp来解析句子。

首先你必须下载stanford-corenlp-full你所在的文件夹*.jar里面的文件。并在文件夹内运行服务器(默认端口为 9000)。

export CLASSPATH="`find . -name '*.jar'`"
java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer [port?] # run server

然后在 Python 中,您可以运行以下命令来标记句子。

from pycorenlp import StanfordCoreNLP
nlp = StanfordCoreNLP('http://localhost:9000')

text = "The old oak tree from India fell down."

output = nlp.annotate(text, properties={
  'annotators': 'parse',
  'outputFormat': 'json'
})

print(output['sentences'][0]['parse']) # tagged output sentence
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 python nltk 获取解析树? 的相关文章

  • 让 VoiceChannel.members 和 Guild.members 返回完整列表的问题

    每当我尝试使用 VoiceChannel members 或 Guild members 时 它都不会提供适用成员的完整列表 我从文本命令的上下文中获取 VoiceChannel 和 Guild 如下所示 bot command name
  • 计算另一个字符串中多个字符串的出现次数

    在 Python 2 7 中 给定以下字符串 Spot是一只棕色的狗 斑点有棕色的头发 斑点的头发是棕色的 查找字符串中 Spot brown 和 hair 总数的最佳方法是什么 在示例中 它将返回 8 我正在寻找类似的东西string c
  • pandas DataFrame.join 的运行时间是多少(大“O”顺序)?

    这个问题更具概念性 理论性 与非常大的数据集的运行时间有关 所以我很抱歉没有一个最小的例子来展示 我有一堆来自两个不同传感器的数据帧 我需要最终将它们连接成两个very来自两个不同传感器的大数据帧 df snsr1 and df snsr2
  • 在 Django Admin 中调整字段大小

    在管理上添加或编辑条目时 Django 倾向于填充水平空间 但在某些情况下 当编辑 8 个字符宽的日期字段或 6 或 8 个字符的 CharField 时 这确实是一种空间浪费 字符宽 然后编辑框最多可容纳 15 或 20 个字符 我如何告
  • Python 3d 绘图设置固定色阶

    我正在尝试绘制两个 3d 数组 第一个数组的 z 值在范围内 0 15 0 15 第二个来自 0 001 0 001 当我绘图时 色标自动遵循数据范围 如何设置自定义比例 我不想看到 0 001 的浅色 而应该看到 0 15 的浅色 如何修
  • PyQt 使用 ctrl+Enter 触发按钮

    我正在尝试在我的应用程序中触发 确定 按钮 我当前尝试的代码是这样的 self okPushButton setShortcut ctrl Enter 然而 它不起作用 这是有道理的 我尝试查找一些按键序列here http ftp ics
  • 从 Powershell 脚本安装 Python

    当以管理员身份从 PowerShell 命令行运行以下命令时 可以在 Windows 11 上成功安装 Python c temp python 3 11 4 amd64 exe quiet InstallAllUsers 0 Instal
  • Java 和 Python 可以在同一个应用程序中共存吗?

    我需要一个 Java 实例直接从 Python 实例数据存储中获取数据 我不知道这是否可能 数据存储是否透明 唯一 或者每个实例 如果它们确实可以共存 都有其单独的数据存储 总结一下 Java 应用程序如何从 Python 应用程序的数据存
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • 未知错误:Chrome 无法启动:异常退出

    当我使用 chromedriver 对 Selenium 运行测试时 出现此错误 selenium common exceptions WebDriverException Message unknown error Chrome fail
  • Django 视图中的“请求”是什么

    在 Django 第一个应用程序的 Django 教程中 我们有 from django http import HttpResponse def index request return HttpResponse Hello world
  • Pandas 组合不同索引的数据帧

    我有两个数据框df 1 and df 2具有不同的索引和列 但是 有一些索引和列重叠 我创建了一个数据框df索引和列的并集 因此不存在重复的索引或列 我想填写数据框df通过以下方式 for x in df index for y in df
  • 在 Google App Engine 中,如何避免创建具有相同属性的重复实体?

    我正在尝试添加一个事务 以避免创建具有相同属性的两个实体 在我的应用程序中 每次看到新的 Google 用户登录时 我都会创建一个新的播放器 当新的 Google 用户在几毫秒内进行多个 json 调用时 我当前的实现偶尔会创建重复的播放器
  • 如何使用 AWS Lambda Python 读取 AWS S3 存储的 Word 文档(.doc 和 .docx)文件内容?

    我的场景是 我尝试使用 python 实现从 Aws Lambda 读取 AWS 存储的 S3 word 文档 doc 和 docx 文件内容 下面的代码是我使用的 我的问题是我可以获取文件名 但无法读取内容 def lambda hand
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 等待子进程使用 os.system

    我用了很多os system在 for 循环内调用创建后台进程 如何等待所有后台进程结束 os wait告诉我没有子进程 ps 我使用的是Solaris 这是我的代码 usr bin python import subprocess imp
  • 如何使用 PrimaryKeyRelatedField 更新多对多关系上的类别

    Django Rest 框架有一个主键相关字段 http www django rest framework org api guide relations primarykeyrelatedfield其中列出了我的 IDmany to m
  • 如何将Python3设置为Mac上的默认Python版本?

    有没有办法将 Python 3 8 3 设置为 macOS Catalina 版本 10 15 2 上的默认 Python 版本 我已经完成的步骤 看看它安装在哪里 ls l usr local bin python 我得到的输出是这样的
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • 使用 Karma (Jasmine) 测试 AngularJS 工厂

    我正在努力使用 Karma Jasmine 测试 AngularJS 工厂 我无法将我的工厂注入OfficerValidationService多变的 我究竟做错了什么 注意 文件已正确加载 Factory use strict angul
  • 如何在 Flutter 中监控剪贴板?

    我正在寻找一种在 Flutter 中监视剪贴板的方法 我能找到的与 Flutter 上的剪贴板交互相关的所有内容是 剪贴板类 有谁知道如何监控系统剪贴板中的新项目 最好使用插件 可能有点晚了 但仍然如此 不需要插件或库 解决方案可能非常简单
  • .Select、.Activesheet、.Activecell 等...

    对于这个问题 我参考下面的帖子来澄清一下 为什么我的条件格式在用VBA添加时会偏移 在我这些天看到的很多很多帖子中 OP 被默默地允许使用 Activate Select Offset 等 而它们却为潜在错误 通常是由最终用户引起的 敞开了
  • 计算平均置信区间而不存储所有数据点

    对于大型n 请参阅下文了解如何确定足够大的值 根据中心极限定理 可以安全地将样本均值的分布视为正态 高斯 但我想要一个程序 为任何给出一个置信区间n 实现这一点的方法是使用 Student T 分布n 1自由程度 所以问题是 给定您一次收集
  • Ebean多对多查询

    我有两个类 用户和汽车 两者都有 ManyToMany 相互映射 User Entity public class User extends Model private int year ManyToMany cascade Cascade
  • 方法中变量的最大数量

    我在这里闲着 所以我有这个好奇心 有人可以告诉我 C 中每个方法的最大变量数是多少 我只是尝试编译生成的程序源 其中包含 26 26 26 26 个局部变量 而不是方法参数 它们被称为 aaaa aaab aaac等等 我遇到了这个限制 错
  • Hibernate 搜索与 spring-data-solr 、 spring-data-elasticsearch

    我有一个 Spring Boot Spring Data JPA hibernate Web 应用程序 想要引入文本搜索功能 我了解以下内容 hibernate search 或 spring data 都可以集成到我的应用程序中 Hibe
  • 如何从嵌套类访问超类方法?

    我希望这段代码可以解释这个问题 class Foo void a stuff class Bar extends Foo void a throw new Exception This is not allowed for Bar clas
  • 如何使用 div 和 css 模拟表格?

    像这样的表 table tr td td td td td td tr tr td td td td td td tr table 如何使用 div 和 css display table 规则创建一个 尝试这个 CSS table dis
  • 具有多个值列的数据透视表/交叉表

    我有一个产生以下结果集的视图 CREATE TABLE foo AS SELECT client id asset type current value future value FROM VALUES 1 0 10 20 1 1 5 10
  • 如何在编写测试时检查实际的 Laravel 命令输出?

    我正在为 Laravel Artisan 控制台命令编写一个非常基本的测试 如下所示 this gt artisan my command some option gt some value gt expectsOutput the exp
  • 如何在 Airflow 中运行异步函数?

    我正在编写一个气流任务来读取大型 csv 并将其保存到 postgresql 数据库 我发现这个 asyncpg 包具有复制功能 其运行速度比任何其他包都要快得多 然而 它是异步的 我不知道如何将它合并到Airflow中 这是示例代码 fr
  • 检查 W10 上的 Windows 版本

    有谁知道 TOSVersion Name 是否仍然适用于 Windows 10 我有一个 vcl 应用程序 它有一个表单显示事件 该事件获取操作系统详细信息并使用 SysUtils 中的 TOSVersion 记录将它们显示在 TMemo
  • 为什么 Java 会产生这么多进程?

    我编写了一个 Java 服务器应用程序 在Debian 7 虚拟服务器 该应用程序本身工作得很好 但我注意到一些非常奇怪的事情 Issue 打电话后java Xmx200M jar CCU jar我希望看到一个 Java 进程运行我的CCU
  • richfaces suggestBox 将附加值传递给支持 bean

    使用 RichFaces 时suggestionBox如何从带有文本输入的页面传递多个 id 或值suggestionBox支持豆 即 显示所选州内的建议城市列表 这是我的autoComplete method public List lt
  • pandas groupby 计算列中零的数量

    我有一个数据框 例如 Date B C 20 07 2018 10 8 20 07 2018 1 0 21 07 2018 0 1 21 07 2018 1 0 如何计算每个日期每列的零值和非零值 使用 sum 对我没有帮助 因为它会将非零
  • 从Python中的基类继承namedtuple

    是否有可能生产一个namedtuple哪个继承自基类 我想要的是Circle and Rectangle are namedtuples 和 都是从公共基类 Shape 继承的 from collections import namedtu
  • 如何将实体框架添加到控制台应用程序(包含图像)

    I try to add entity framework to console application I press add new item and then then 然后我添加了代码 class Program static vo
  • Chrome 不支持 Service Worker (69.0.3497.81)

    我开始使用 PWA 渐进式网络应用程序 当我尝试检查 Chrome 浏览器是否支持 Service Worker 时 它总是返回 false 下面的代码我用于检查 Note 我使用的是 chrome 版本 69 0 3497 81 官方版本
  • 如何使用 python nltk 获取解析树?

    给出以下句子 The old oak tree from India fell down 如何使用 python NLTK 获得句子的以下解析树表示 ROOT S NP NP DT The JJ old NN oak NN tree PP