2016-12-01から1ヶ月間の記事一覧

言語処理100本ノック

37. 頻度上位10語¶ 出現頻度が高い10語とその出現頻度をグラフ(例えば棒グラフなど)で表示せよ. import re from collections import Counter sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keit…

言語処理100本ノック

36. 単語の出現頻度 文章中に出現する単語とその出現頻度を求め,出現頻度の高い順に並べよ. import re from collections import Counter sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso …

言語処理100本ノック

35. 名詞の連接 名詞の連接(連続して出現する名詞)を最長一致で抽出せよ import re sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso = [] while line: if "EOS" in line: if len(keitaiso…

言語処理100本ノック

34. 「AのB」 2つの名詞が「の」で連結されている名詞句を抽出せよ. import re sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso = [] while line: if "EOS" in line: if len(keitaiso)>0: …

言語処理100本ノック

33. サ変名詞 サ変接続の名詞をすべて抽出せよ. import re sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso = [] while line: if "EOS" in line: if len(keitaiso)>0: sentences.append(ke…

言語処理100本ノック

32. 動詞の原形 動詞の原形をすべて抽出せよ. import re sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso = [] while line: if "EOS" in line: if len(keitaiso)>0: sentences.append(keit…

言語処理100本ノック

31. 動詞 動詞の表層形をすべて抽出せよ. import re sentences = [] with open("D:\\nlp100\\neko.txt.mecab",encoding="UTF-8") as fr: line = fr.readline() keitaiso = [] while line: if "EOS" in line: if len(keitaiso)>0: sentences.append(keitaiso…

言語処理100本ノック

30. 形態素解析結果の読み込み 形態素解析結果(neko.txt.mecab)を読み込むプログラムを実装せよ.ただし,各形態素は表層形(surface),基本形(base),品詞(pos),品詞細分類1(pos1)をキーとするマッピング型に格納し,1文を形態素(マッピング型)…

言語処理100本ノック

27. 内部リンクの除去¶ 26の処理に加えて,テンプレートの値からMediaWikiの内部リンクマークアップを除去し,テキストに変換せよ(参考: マークアップ早見表). import json import re def wiki_selection(): with open("D:\\nlp100\\jawiki-country.json"…

言語処理100本ノック

26. 強調マークアップの除去 25の処理時に,テンプレートの値からMediaWikiの強調マークアップ(弱い強調,強調,強い強調のすべて)を除去してテキストに変換せよ(参考: マークアップ早見表). import json import re def wiki_selection(): with open("D…

言語処理100本ノック

25. テンプレートの抽出 記事中に含まれる「基礎情報」テンプレートのフィールド名と値を抽出し,辞書オブジェクトとして格納せよ. import json import re def wiki_selection(): with open("D:\\nlp100\\jawiki-country.json",encoding="UTF-8") as fr: wi…

言語処理100本ノック

24. ファイル参照の抽出 記事から参照されているメディアファイルをすべて抜き出せ. import json import re def wiki_selection(): with open("D:\\nlp100\\jawiki-country.json",encoding="UTF-8") as fr: wiki_line = fr.readline() while wiki_line: wik…