データを調べ、正規表現を使用して顔文字をチェックし、顔文字が見つかったときにカウンターが更新されるスクリプトを作成しました。次に、カテゴリごとのカウント数をリストに書き込む必要があります。たとえば、cat ne には 25 個の絵文字があり、カテゴリ fr には 45 個の顔文字があります。私が得る結果は次のとおりです。
[1, 'ag', 2, 'dg', 3, 'dg', 4, 'fr', 5, 'fr', 6, 'fr', 7, 'fr', 8, 'hp', 9 , 'hp', 10, 'hp', 11, 'hp', 12, 'hp', 13, 'hp', 14, 'hp', 15, 'hp', 16, 'hp', 17, ' hp', 18, 'hp', 19, 'hp', 20, 'hp', 21, 'hp', 22, 'hp', 23, 'hp', 24, 'hp', 25, 'ne' , 26, ね, 27, ね, 28, ね, 29, ね, 30, ね, 31, ね, 32, ね, 33, ね, 34 、「ね」、35、「ね」、36、「ね」、37、「ね」、38]
fileid はこの形式で、1 つの大きなファイルには 7 つの小さなファイルが含まれます (各ファイルはカテゴリです)。カテゴリ ファイル内には、カテゴリごとに約 100 個のファイルがあります。
data/ne/567.txt
各 .txt ファイルのデータは 1 つの文であり、次のようになります。
今日はとても幸せです:)
これは私のスクリプトです:
counter = 0
lijst = []
for fileid in corpus.fileids():
for sentence in corpus.sents(fileid):
cat = str(fileid.split('/')[0])
s = " ".join(sentence)
m = re.search('(:\)|:\(|:\s|:\D|:\o|:\@)+', s)
if m is not None:
counter +=1
lijst += [counter] + [cat]