Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中提取高频短语_Python_Frequency_Frequency Analysis_Word Frequency - Fatal编程技术网

如何在python中提取高频短语

如何在python中提取高频短语,python,frequency,frequency-analysis,word-frequency,Python,Frequency,Frequency Analysis,Word Frequency,这是语料库 abcdef abcd xabcd b bcef ef aef 我要提取的是abcd,ef,然后我尝试计算所有n克: abcdef 1 abcd 3 abc 3 ... 我的问题是如何用abcdef和abc区分abcdef,因为abcdef只出现一次,abc是“abcd”的子字符串。当然,我可以使用这两个条件进行过滤,但我只想知道解决这个问题的任何现有算法目标,或者python中的包 更新 我确实知道如何在python中计算n-gram,所以我的问题更多的是如何区分abcd与ab

这是语料库

abcdef
abcd
xabcd
b
bcef
ef
aef
我要提取的是
abcd
ef
,然后我尝试计算所有n克:

abcdef 1
abcd 3
abc 3
...
我的问题是如何用
abcdef
abc
区分
abcdef
,因为
abcdef
只出现一次,
abc
是“abcd”的子字符串。当然,我可以使用这两个条件进行过滤,但我只想知道解决这个问题的任何现有算法目标,或者python中的包

更新
我确实知道如何在python中计算n-gram,所以我的问题更多的是如何区分
abcd
abcdef
abc
而不是如何计算。但是,如果您知道有任何python包针对解决这个NLP问题,很高兴知道:)

将这个问题中的字母视为POS的标记。如果句子已经解析为POS,那么这可以被视为语法提取问题

我不确定
NLTK
Python
中的其他库是否处理此问题。但我认为你可以搜索文献,自己实现一个简单的提取


希望这能有所帮助。

将这个问题中的字母视为POS的标记。考虑到已经解析成POS的句子,这可以被认为是一个语法提取问题

我不确定
NLTK
Python
中的其他库是否处理此问题。但我认为你可以搜索文献,自己实现一个简单的提取


希望这有帮助。

So> <代码> <代码>考虑一个词,以及<代码> ABC 和<代码> ABCD ?@ MAI,简短的回答是肯定的。但是在语料库中,
a
出现了4次,在
abcd
中出现了3次,所以我不想提取它,因为它很可能是高频短语
abcd
的一部分,我认为这在NLP中是一个相当困难的问题。在你的问题中,我看不出一个短语的明确定义,尽管我有点明白你想要什么。也许你想要的是字符串中最长的短语,它(1)完全覆盖一些子字符串(2)至少发生N次。我使用scikit learn进行这种类型的操作,他们的CountVectorier也会@Mai执行字符N-grams。这在NLP中是一个难题,我只能使用单词频率来定义短语。总之,
没有答案
也是我的答案,谢谢!所以<代码> A/Eng>是一个词,以及<代码> ABC 和<代码> ABCD ?@ MAI,简短的回答是肯定的。但是在语料库中,
a
出现了4次,在
abcd
中出现了3次,所以我不想提取它,因为它很可能是高频短语
abcd
的一部分,我认为这在NLP中是一个相当困难的问题。在你的问题中,我看不出一个短语的明确定义,尽管我有点明白你想要什么。也许你想要的是字符串中最长的短语,它(1)完全覆盖一些子字符串(2)至少发生N次。我使用scikit learn进行这种类型的操作,他们的CountVectorier也会@Mai执行字符N-grams。这在NLP中是一个难题,我只能使用单词频率来定义短语。总之,
没有答案
也是我的答案,谢谢!