import os
import numpy as np
import pandas as pd
from tqdm import tqdm
import numpy as np
import string
import nltk
from nltk.tokenize import word_tokenize
from textblob import TextBlob import pdb max_phrase_length = 5 basicPath = '/media/wangxiao/b8efbc67-7ea5-476d-9631-70da75f84e2d/train_dataset/' path = basicPath
files = os.listdir(path)
print(path) word_base_path = '/media/wangxiao/b8efbc67-7ea5-476d-9631-70da75f84e2d/train_dataset/word_list.txt'
wordBase = open(word_base_path, 'r')
wordList = [] lines = wordBase.readlines()
for line in lines:
line_ = line.rstrip('\n').rstrip('.')
# pdb.set_trace()
wordList.append(line_) for i in range(len(files)):
videoName = files[i]
print videoName
langPath = path + videoName + '/language.txt' ## for other datset
# langPath = path + videoName + '/' + videoName+'.txt'
f = open(langPath, 'r')
language = f.readline()
words = word_tokenize(language)
token_results = nltk.pos_tag(words)
blob = TextBlob(language) print blob.noun_phrases langPath_Phrase = path + videoName + '/auto_extracted_Phrase.txt'
f_phrase = open(langPath_Phrase, 'w') langPath_PhraseIndex = path + videoName + '/autoExtracted_Phrase_Index.txt'
f_phrase_Idx = open(langPath_PhraseIndex, 'w') # pdb.set_trace() for j in range(len(blob.noun_phrases)):
phrase = blob.noun_phrases[j]
f_phrase.write(phrase)
f_phrase.write('\n') written_num = 0 if len(phrase) > 1:
word_ = word_tokenize(phrase) for phraseIndex in range(len(word_)):
wordINDEX = wordList.index(word_[phraseIndex])
f_phrase_Idx.write(str(wordINDEX))
f_phrase_Idx.write(',')
written_num = written_num + 1 if written_num < max_phrase_length:
diff_num = max_phrase_length - written_num
for k in range(diff_num):
f_phrase_Idx.write('')
f_phrase_Idx.write(',')
f_phrase_Idx.write('\n')

(Code) Python implementation of phrase extraction from sentence的更多相关文章

  1. Tutorials on training the Skip-thoughts vectors for features extraction of sentence.

    Tutorials on training the Skip-thoughts vectors for features extraction of sentence.  1. Send emails ...

  2. VS Code Python 全新发布!Jupyter Notebook 原生支持终于来了!

    VS Code Python 全新发布!Jupyter Notebook 原生支持终于来了! 北京时间 2019 年 10 月 9 日,微软发布了全新的 VS Code Python 插件,带来了众多 ...

  3. 官宣!VS Code Python 全新功能在 PyCon China 全球首发!

    北京时间 2019 年 9 月 21 日,PyCon China 2019 在上海举行. 在下午的演讲中,来自微软开发工具事业部的资深研发工程师 在演讲中,我们看到了 Azure Notebook 与 ...

  4. MAC+VS Code+Python+Markdown调试配置

    目录 VS Code官网下载 VS Code插件推荐 VS Code Python环境配置 Markdown配置 VS Code官方文档 VS Code官网下载 VS Code官网下载地址 VS Co ...

  5. VS Code python初体验笔记

    之前一直都是使用Notepad++来编写Python代码,后来想起来之前查资料的时候有个VS Code可以编写一些的脚本语言(js,node.js)甚至是高级编程语言(C#,PHP,JAVA,Pyth ...

  6. [tool] Visual Studio Code python配置

    语言设置 安装中文插件即可成为中文 选择一个Python解释器 Python是一种解释型语言,为了运行Python代码并获取Python IntelliSense,您必须告诉VS Code使用哪个解释 ...

  7. vs code python保存时pylint提示"Unable to import 'flask'"

    在配置vscode python开发环境时,编写如下代码并保存时,会提示Unable to import 'flask' from flask import Flask app = Flask(__n ...

  8. VS code -python 使用笔记本

    1--使用虚拟环境 |----setting->search: python.venv->设置  venv path (你创建的虚拟环境文件夹所在路径,此处我的是 - 目录下) |---- ...

  9. [leetcode]Gray Code @ Python

    原题地址:https://oj.leetcode.com/problems/gray-code/ 题意: The gray code is a binary numeral system where ...

随机推荐

  1. Django之JWT理解及简单应用

    Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(S ...

  2. python 函数enumerate(x,y)的用法

    enumerate(x,y)函数是把元组tuple.字符串str.列表list里面的元素遍历和索引组合,其用法与range()函数很相似, 下面示例enumerate(x,y)用法以及range(x) ...

  3. Redis持久化介绍

    所有的数据都存在内存中,从内存当中同步到硬盘上,这个过程叫做持久化过程. 持久化操作,两种方式:rdb方式.aof方式,可以单独使用或者结合使用. 使用方法: rdb持久化方法:在指定的时间间隔写入硬 ...

  4. Linux 下如何修改用户名(同时修改用户组名和家目录)

    有时候,由于某些原因,我们可能会需要重命名用户名.我们可以很容易地修改用户名以及对应的家目录和 UID.-- Shusain 本文导航◈ 修改用户名12%◈ 修改家目录43%◈ 更改用户 UID52% ...

  5. angular4脚手架搭建

    Angular4.X安装,创建 1.安装最新的nodejs(node -v ,npm -v) 2.新建文件夹(右键git bash here)npm install -g @angular/cli 3 ...

  6. charles-Andriod 手机手机抓包乱码

    然后重启进行进行抓包

  7. Adaboost总结

    一.简介 Boosting 是一类算法的总称,这类算法的特点是通过训练若干弱分类器,然后将弱分类器组合成强分类器进行分类.为什么要这样做呢?因为弱分类器训练起来很容易,将弱分类器集成起来,往往可以得到 ...

  8. archlinux中安装Oracle12c的过程中遇到的问题

    INFO: : cannot find INFO: /usr/lib64/libpthread_nonshared.aINFO: INFO: genclntsh: Failed to link lib ...

  9. CentOS 7 安装MySQL5.7.25

    STEP 1. 下载 去往官方下载MySQL包.http://dev.mysql.com mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz [root@study ...

  10. html5 css练习 定位布局

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...