python新手。函数以一个字符串作为输入,输出是一个字符串的预处理
def message_to_words(message ):
letters = re.sub("[^a-zA-Z]", " ", message )
words = letters.lower().split()
stops = set(stopwords.words("english"))
meaningful_words = [w for w in words if not w in stops]
return( " ".join( meaningful_words ))
当我调用函数时
^{pr2}$我得到这个错误
TypeError Traceback (most recent call last)
<ipython-input-156-061399cb4dfd> in <module>()
3 for i in xrange(0, df["Message"].size):
----> 5 clean_messages.append( message_to_words( df["Message"][i] ) )
---> 12 letters = re.sub("[^a-zA-Z]", " ", message )
..../python2.7/re.pyc in sub(pattern, repl, string, count, flags)
153 a callable, it's passed the match object and must return
154 a replacement string to be used."""
--> 155 return _compile(pattern, flags).sub(repl, string, count)
156
157 def subn(pattern, repl, string, count=0, flags=0):
TypeError: expected string or buffer
当数据行在500以内时,“print df[“Message”][i]”是一个字符串,代码没有错误,但是,当数据行增加到500以上时,“print df[”Message“][i]”是一个浮点。把我弄糊涂了
目前没有回答
相关问题 更多 >
编程相关推荐