把NLTK中提取的unigram 特征转换成0,1向量表示方式

这段代码演示了如何将使用NLTK提取的unigram特征转换为01向量表示,以便在Weka中以ARFF格式处理。它读取停用词列表、特征列表以及情感词汇文件,然后创建对应的情感类别(正面和负面)向量文件。
摘要由CSDN通过智能技术生成

weka中arff格式文件 需要给出特征向量才可读取。NLTK中不需要,但是可以把features转成 向量的形式表示出来。

本人代码设计能力实在太弱,折腾了一上午才调试出来可用的script 是在python下完成的。

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

import csv
import re




def replaceTwoOrMore(s):
    # pattern to look for three or more repetitions of any character, including  改写如 loveeeeeee的词 为 love
    # newlines.
    pattern = re.compile(r"(.)\1{1,}", re.DOTALL) 
    return pattern.sub(r"\1\1", s)


inpfile = open("stopwords.txt", "r")        #把读入的tweets去掉 stopwords    
line1 = inpfile.readline()
stopW

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值