うまく機能する次のコードがありますが、データをトリミングしてデータファイルに保存することはできません。
import nltk
tweets = [
(['love', 'this', 'car']),
(['this', 'view', 'amazing']),
(['not', 'looking', 'forward', 'the', 'concert'])
]
def get_words_in_tweets(tweets):
all_words = []
for (words) in tweets:
all_words.extend(words)
return all_words
def get_word_features(wordlist):
wordlist = nltk.FreqDist(wordlist)
word_features = wordlist.keys()
return word_features
output = open('wordFeatures.csv','w')
word_features = get_word_features(get_words_in_tweets(tweets))
print (word_features)
output.write(word_features)
#print (wordlist)
output.close()
それがすることは、単語がダブルかトリプルかどうかをチェックし、リストに単語を1つだけ追加することです。出力は次のようになります。
['this', 'amazing', 'car', 'concert', 'forward', 'looking', 'love', 'not', 'the', 'view']
ご覧のとおり、このデータをテキストファイルに保存しようとしましたが、
TypeError: expected a character buffer object
次の形式のテキストファイルで配列からのデータが必要です。
1:this
2:amazing
3:car
4:concert
5:forward
...
したがって、増加する整数を持つすべての単語に対して1行。
この方法でデータを保存する方法を知っている人はいますか?