Python:两个文件之间逐字进行文本处理

兰戈斯基

我是NLP的新手。我有两个文本文件。第一个文件已dialogues正确格式化,如下所示。

    RECEPTIONIST Can I help you?
    LINCOLN Yes. Um, is this the State bank?
    RECEPTIONIST If you have to ask, maybe you shouldn't be here.
    SARAH I think this is the place.
    RECEPTIONIST Fill in the query.
    LINCOLN Thank-you. We'll be right back.
    RECEPTIONIST Oh, take your time. I'll just finish my crossword puzzle.
    oh, wait.

第二个文本文件有7列。在第五栏中,我有下面的对话中的序列词。

    Column 5
    Can
    I
    help
    you
    ?
    yes
    .
    Um
    ,

句号和逗号在此处被视为单词,如果它具有3个或更多的句号"...",则应将其视为一个单词。另外,如果单词"Thank-you"(因为它们之间没有空格)应该被视为一个单词。

现在,我想用python写一个脚本来比较中的每个单词dialogues,然后创建一个新列(第8列),该列应显示“谁在说这个单词”像下面

    Column 5           Column 8
    Can                RECEPTIONIST
    I                  RECEPTIONIST
    help               RECEPTIONIST
    you                RECEPTIONIST
    ?                  RECEPTIONIST  
    yes                LINCOLN
    .                  LINCOLN
    Um                 LINCOLN
    ,                  LINCOLN

在此处输入图片说明

因为我对python环境是全新的。我不知道从哪里开始。请提供您的建议和编码技巧!

第一个文件包含对话,第二个文件包含有关对话的信息

丹森斯

我建议执行以下步骤:

处理文本文件1

在这里您想将字符串拆分LEONARD Agreed, what's your point为一组标记。一种幼稚的方法是使用split(" ")它将基于空格分割文本的方法,但是您还需要考虑标点符号。

我建议使用NLTK,这是​​用于自然语言处理的python库。一个基本的示例将显示这如何帮助您:

import nltk
sentence = """Hi this is a test."""
tokens = nltk.word_tokenize(sentence)
# output: tokens
['Hi', 'this', "is", 'a', 'test', '.']

正确标记每个句子后,您将知道第二个文本文件中有多少行。

处理文本文件2

现在,您将遍历第二个文本文件中的每一行,检查单词是否与您在第一步中找到的假定标记相匹配。如果是这种情况,则将第一个标记(说出它的人的名字)添加到该行的末尾(第8列)。

您可以TheBigBangTheory.Season01.Episode01.en 1 59.160 0.070 you 0.990 lex通过简单地从字符串中获取单词sentence.split(" ")[4]you在这种情况下会返回

我相信仍然需要进行一些调整,但我会留给您。这可能会概述总体思路。

祝你好运,Bazinga!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在awk中的两个模式之间进行文本处理,以提供选择性的唯一输出

来自分类Dev

使用sed或AWK进行文本处理

来自分类Dev

用PHP进行文本处理

来自分类Dev

通过使用 AWK 或脚本进行文本处理来管理大文件

来自分类Dev

仅针对从X行到Y行的条件进行文本处理

来自分类Dev

Pygame文本处理

来自分类Dev

Bash 文本处理

来自分类Dev

文本处理批处理文件登录脚本

来自分类Dev

文本处理批处理文件登录脚本

来自分类Dev

在bash中的变量上使用sed进行文本处理未提供预期的(修改的)输出?

来自分类Dev

歌曲文件列表的模式匹配和文本处理

来自分类Dev

文本处理恰当地输出文件

来自分类Dev

如何捕获文件头,然后对原始文件进行进一步的文本处理?

来自分类Dev

提高文本处理性能

来自分类Dev

Shell脚本-文本处理

来自分类Dev

文本处理-识别代码语法

来自分类Dev

文本处理以提取结构字段

来自分类Dev

如何通过另一个文本处理器程序使PyCharm管道python程序输出

来自分类Dev

是否应编写文本处理DCG来处理代码或字符?或两者?

来自分类Dev

是否应编写文本处理DCG来处理代码或字符?或两者?

来自分类Dev

文本处理-每两行用逗号连接

来自分类Dev

Xlsxwriter:是否可以在单元格上进行东亚语言垂直文本处理?

来自分类Dev

如何对不同的文本处理命令进行基准测试并找出最快的?

来自分类Dev

文本处理:如何按日期(由字符串分隔)对列表进行排序

来自分类Dev

Xlsxwriter:是否可以在单元格上进行东亚语言垂直文本处理?

来自分类Dev

RapidMiner文本处理:如何将ngram写入文件

来自分类Dev

文本处理-从ibnetdiscover输出构建slurmtopology.conf文件

来自分类Dev

文本处理-如何从文件中顺序获取多个模式

来自分类Dev

文本处理-如何在所有行中输出与模式匹配的文件

Related 相关文章

  1. 1

    在awk中的两个模式之间进行文本处理,以提供选择性的唯一输出

  2. 2

    使用sed或AWK进行文本处理

  3. 3

    用PHP进行文本处理

  4. 4

    通过使用 AWK 或脚本进行文本处理来管理大文件

  5. 5

    仅针对从X行到Y行的条件进行文本处理

  6. 6

    Pygame文本处理

  7. 7

    Bash 文本处理

  8. 8

    文本处理批处理文件登录脚本

  9. 9

    文本处理批处理文件登录脚本

  10. 10

    在bash中的变量上使用sed进行文本处理未提供预期的(修改的)输出?

  11. 11

    歌曲文件列表的模式匹配和文本处理

  12. 12

    文本处理恰当地输出文件

  13. 13

    如何捕获文件头,然后对原始文件进行进一步的文本处理?

  14. 14

    提高文本处理性能

  15. 15

    Shell脚本-文本处理

  16. 16

    文本处理-识别代码语法

  17. 17

    文本处理以提取结构字段

  18. 18

    如何通过另一个文本处理器程序使PyCharm管道python程序输出

  19. 19

    是否应编写文本处理DCG来处理代码或字符?或两者?

  20. 20

    是否应编写文本处理DCG来处理代码或字符?或两者?

  21. 21

    文本处理-每两行用逗号连接

  22. 22

    Xlsxwriter:是否可以在单元格上进行东亚语言垂直文本处理?

  23. 23

    如何对不同的文本处理命令进行基准测试并找出最快的?

  24. 24

    文本处理:如何按日期(由字符串分隔)对列表进行排序

  25. 25

    Xlsxwriter:是否可以在单元格上进行东亚语言垂直文本处理?

  26. 26

    RapidMiner文本处理:如何将ngram写入文件

  27. 27

    文本处理-从ibnetdiscover输出构建slurmtopology.conf文件

  28. 28

    文本处理-如何从文件中顺序获取多个模式

  29. 29

    文本处理-如何在所有行中输出与模式匹配的文件

热门标签

归档