为 nltk 解析树生成语法规则

2024-02-24

如果我有这句话"Mary saw a dog"以及以下内容:

pos_tags = ['NNP', 'VBD', 'DT', 'NN']

是否可以生成这句话的语法规则,以便可以生成解析树(下面的语法是使用的语法规则nltk.parse_cfg)

sent = "Mary saw a dog".split()
rd_parser = nltk.RecursiveDescentParser(grammar)

for tree in rd_parser.nbest_parse(sent):
    print tree

你可以试试:

import nltk
# Define the cfg grammar.
grammar = nltk.parse_cfg("""
S -> NP VP
NP -> 'DT' 'NN'
VP -> 'VB'
VP -> 'VB' 'NN'
""")


# Make your POS sentence into a list of tokens.
sentence = "DT NN VB NN".split(" ")

# Load the grammar into the ChartParser.
cp = nltk.ChartParser(grammar)

# Generate and print the nbest_parse from the grammar given the sentence tokens.
for tree in cp.nbest_parse(sentence):
    print tree

但正如 @alexis 强调的那样,你所要求的是不可能的 =)

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

为 nltk 解析树生成语法规则 的相关文章

  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 如何改变Python中特定打印字母的颜色?

    我正在尝试做一个简短的测验 并且想将错误答案显示为红色 欢迎来到我的测验 您想开始吗 是的 祝你好运 法国的首都是哪里 法国 随机答案不正确的答案 我正在尝试将其显示为红色 我的代码是 print Welcome to my Quiz be
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f
  • 协方差矩阵的对角元素不是 1 pandas/numpy

    我有以下数据框 A B 0 1 5 1 2 6 2 3 7 3 4 8 我想计算协方差 a df iloc 0 values b df iloc 1 values 使用 numpy 作为 cov numpy cov a b I get ar
  • 使用 ElementTree 时出现未定义实体错误

    我有一组 XML 文件 需要读取它们并将其格式化为单个 CSV 文件 为了读取 XML 文件 我使用了提到的解决方案here https stackoverflow com questions 5530857 parse xml file
  • 如何将列表列表中的元素转换为小写? [复制]

    这个问题在这里已经有答案了 我正在尝试将列表列表的元素转换为小写 这就是看起来的样子 print dataset It went Through my shirt And came out The back and hit the kid
  • 如何在 R 或 Python 中制作旭日图?

    到目前为止 我一直无法找到一个可以创建旭日图的 R 库约翰 斯塔斯科 http www cc gatech edu gvu ii sunburst 有人知道如何在 R 或 Python 中实现这一点吗 在极坐标投影中使用 matplotli
  • Keras 模型无法预测是否在线程中调用

    我尝试在线程应用程序中使用 keras 和可用模型 VGG16 执行预测 但是 如果我在主线程中调用预测 一切都会正常 但是如果我在线程函数内部进行预测 无论我使用threading multiprocessing 它只是在预测过程中停止
  • Python str.format() 方法的默认 kwarg 值

    我希望尝试使现有字符串的复数化尽可能简单 并且想知道是否有可能得到str format 在查找 kwargs 时解释默认值 这是一个例子 string number of sheep sheep has run away dict comp
  • R 的 ggplot2 有 Python API 吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我的问题就像标题一样简单 我想使用R s ggplot2但我所有的数据处理都是在Python 有没有Py
  • 在 python 中将变量传递给重定向上的模板

    我对 Python 比较陌生 所以请原谅任何幼稚的问题 我的主页有 2 个输入 一个用于 产品 一个用于 电子邮件 当用户单击 提交 时 他们应该被发送到 success 其中会显示 您已请求 产品 您将通过 电子邮件 收到通知 我试图找出
  • Python极坐标图:绘制与角度对应的值

    我正在尝试绘制以不同角度记录的传感器数据 import pandas as pd import matplotlib pyplot as plt create dataframe each row contains an angle and
  • Python:在列表理解本身中引用列表理解?

    这个想法刚刚出现在我的脑海中 假设您出于某种原因想要通过 Python 中的列表理解来获取列表的唯一元素 i if i in created comprehension else 0 for i in 1 2 1 2 3 1 2 0 0 3
  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • Python 的键盘中断不会中止 Rust 函数 (PyO3)

    我有一个使用 PyO3 用 Rust 编写的 Python 库 它涉及一些昂贵的计算 单个函数调用最多需要 10 分钟 从 Python 调用时如何中止执行 Ctrl C 好像只有执行结束后才会处理 所以本质上没什么用 最小可重现示例 Ca
  • 将 Matplotlib 误差线放置在不位于条形中心的位置

    我正在 Matplotlib 中生成带有错误栏的堆积条形图 不幸的是 某些层相对较小且数据多样 因此多个层的错误条可能重叠 从而使它们难以或无法读取 Example 有没有办法设置每个误差条的位置 即沿 x 轴移动它 以便重叠的线显示在彼此
  • OpenCV Python cv2.mixChannels()

    我试图将其从 C 转换为 Python 但它给出了不同的色调结果 In C Transform it to HSV cvtColor src hsv CV BGR2HSV Use only the Hue value hue create

随机推荐

  • 仅在特定片段上禁用右侧抽屉

    I have Activity with DrawerLayout 其中包含左抽屉和右抽屉 我想知道是否可以禁用特定片段的右侧抽屉 我读过关于mDrawerLayout setDrawerLockMode DrawerLayout LOCK
  • 使用 splrep 平滑轨迹

    从视频记录中可以提取出物体的轨迹head行人穿过瓶颈的情景 因为 行人在移动轨迹时摇摆包含我想消除的令人讨厌的振荡 平滑算法与这个问题无关 结果显示在此figure http postimage org image mt83l9lu3 因此
  • Scrum 和 Fogbugz [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有人同时使用 Fogbugz 和 Scrum 吗 我们广泛使用 Fogbugz 并且我正在寻找任何可能将其用作 Scrum 一部分的人的想法 我
  • += 到底做了什么?

    我需要知道什么 在 Python 中是这样的 就是这么简单 我也希望链接到 Python 中其他速记工具的定义 在Python中 是糖衣 iadd 特殊方法 或 add or radd if iadd 不存在 这 iadd 类的方法可以做任
  • mixin 是否应该对其包含类做出假设?

    我找到了一个 mixin 的示例 它对包含类具有哪些实例变量进行假设 像这样的事情 module Fooable def calculate val one val two end end class Bar attr accessor v
  • 如何从mysql数据库在arraylist中添加超过50,000,000条记录[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 将数据库中超过 50 000 000 条记录添加到数组列表中 我添加了 30 000 000 条记录 它显示堆内存不足错误 看看这里 增加
  • 在 Android 中获取麦克风音频。音频上下文

    由于某种原因我无法得到这个问题的答案 你好 我需要访问 Android 麦克风 我使用这个在网络上制作了一个调谐器应用程序 https github com cwilso PitchDetect https github com cwils
  • .kube/config 中没有访问令牌

    在 GKE 中升级集群后 仪表板将不再接受证书身份验证 我的同事说 没问题 kube config 中有一个可用的令牌 user auth provider config access token REDACTED cmd args con
  • 玩笑测试失败:TypeError:window.matchMedia 不是函数

    这是我第一次前端测试经历 在这个项目中 我使用 Jest 快照测试并收到错误TypeError window matchMedia is not a function在我的组件内 我浏览了 Jest 文档 找到了 手动模拟 部分 但我还不知
  • 如何使用纯 CSS 自动调整图像大小以实现响应式设计?

    我尝试使用 CSS 属性自动调整图像大小max width 但它在 IE7 和 IE8 中不起作用 有没有办法在 IE7 和 IE8 中使用纯 CSS 自动调整图像大小 Use width inherit 使其能够在 IE8 中使用纯 CS
  • 检查环境变量是否已设置[重复]

    这个问题在这里已经有答案了 我正在编写一个shell脚本 我必须检查是否设置了环境变量 如果没有设置则必须设置它 有什么方法可以检查 shell 脚本是否已经设置了环境变量 有条件地分配变量 无论是否在环境中 的标准解决方案是 VAR fo
  • 在以下情况下最终会发生什么情况?

    如果我有以下代码 try some code catch Exception e some code finally 在以下情况下 finally 块会发生什么情况 如果发生任何已检查的异常 如果 System exit 被调用 如果发生任
  • 从 C 读取串行数据 (OSX /dev/tty)

    我正在尝试使用 C 从蓝牙条形码扫描仪 KDC300 读取数据 这是我到目前为止的代码 并且该程序成功建立了与扫描仪的蓝牙连接 但是当扫描条形码时 上没有显示任何输入屏幕 最终将用数据完成更多工作 但我们必须首先让它工作 对吧 这是程序 i
  • 如何使用 POI 解析 Excel 文件中的 UTF-8 字符

    我一直在使用 POI 成功解析 XLS 和 XLSX 文件 但是 我无法从 Excel 电子表格中正确提取特殊字符 例如中文或日文等 UTF 8 编码字符 我已经弄清楚如何从 UTF 8 编码的 csv 或制表符分隔文件中提取数据 但对 E
  • Twitter Bootstrap 嵌套网格放置列

    这可以在 Twitter Bootstrap 中使用相同的标记通过操作行 列类来完成吗 我已经为不同的尺寸设置了单独的标记 理想情况下 我想要一个标记 并使其针对较小的屏幕适当折叠 大视野 Two One
  • 支持作业批处理的排队系统(例如,一名工人同时处理多个作业)

    我正在寻找一个可以支持以下场景的排队系统 客户端添加一个作业 检查某个特定 url URL1 有多少 Facebook 点赞 客户端添加了另一个作业 检查 URL2 的相同信息 一名工作人员从队列中选取 1 到 50 个工作 网址 例如 如
  • VS Code Code Runner 不适用于 virtualenvs

    我无法让 Code Runner 扩展与 virtualenvs 一起使用 每当我尝试运行导入仅安装在 virtualenv 中而不是全局 Python 安装中的库的代码时 我都会收到导入错误 在终端中运行完全相同的代码是可行的 我使用的是
  • 生成 BKS 密钥库并存储应用程序密钥

    我应该创建一个 BKS 密钥库并存储一个私有应用程序密钥 该密钥是一个 48 个字符长的字符串 我还有一个 JCEKS 密钥库 其中已包含此密钥值 如果我尝试使用 portecle 工具转换为 BKS 类型密钥库 则密钥条目会丢失 我是 J
  • 为什么我的程序集需要按特定顺序加载?

    我正在编写一个简单的插件并偶然发现contractType IsAssignableFrom pluginType https msdn microsoft com en us library system type isassignabl
  • 为 nltk 解析树生成语法规则

    如果我有这句话 Mary saw a dog 以及以下内容 pos tags NNP VBD DT NN 是否可以生成这句话的语法规则 以便可以生成解析树 下面的语法是使用的语法规则nltk parse cfg sent Mary saw