- 追加された行はこの色です。
- 削除された行はこの色です。
[[FrontPage]]
**Tree Tagger の連続実行 [#e5e2dcd3]
**TreeTagger Wrapper for Python (2022-03) [#h8355a4a]
-Python で TreeTagger を使うには以下のようにする:
--TreeTagger のインストールは通常通りだが、以下の wrapper が treetagger のディレクトリを探すので、"TreeTagger" というディレクトリを作ってそこに格納するか、treetaggerwrapper.py ファイルが置かれるのと同じディレクトリにあると間違いない。
--pip でwrapper をインストール
pip install treetaggerwrapper
--Jupytor Notebook などで以下のコードでテスト
# TreeTagger Wrapper Test
import treetaggerwrapper as ttw
tagger = ttw.TreeTagger(TAGLANG='en')
tags = tagger.tag_text('I have a pen.')
print(tags)
--Output は以下のように1単語が表層形-品詞-レンマの要素をもつPython のデータ型では、「リスト」になる:
['I\tPNP\ti', 'have\tVHB\thave', 'a\tAT0\ta', 'pen\tNN1\tpen', '.\tSENT\t.']
--ファイルをタグづけはこちら:
tags = tagger.tag_file('newfile.txt')
--ファイルの入出力はこれで:
tagger.tag_file_to('newfile.txt', 'outfile.txt')
-詳しいドキュメントはこちら
--[[TreeTaggerWrapper DOC>https://treetaggerwrapper.readthedocs.io/_/downloads/en/latest/pdf/]]
**TreeTagger の連続実行 [#e5e2dcd3]
***Mac OS X [#n264b15e]
デフォルトではTree Tagger は1ファイルのみしか処理できないので、シェルスクリプトで連続実行できるようにする
デフォルトではTreeTagger は1ファイルのみしか処理できないので、シェルスクリプトで連続実行できるようにする
for fn in *.txt; do ./cmd/tree-tagger-english ${fn} > ${fn}.pos; done
これは Mac OS X 上でのシェルスクリプトの例。ディレクトリ構造および tree tagger のコマンドが Windows とは異なるかもしれない。
これは Mac OS X 上でのシェルスクリプトの例。ディレクトリ構造および TreeTagger のコマンドが Windows とは異なるかもしれない。
同一ディレクトリ内のすべての *.txt ファイルを、tree tagger にかけて、*.pos という拡張子のファイルに変換するコマンド。
同一ディレクトリ内のすべての *.txt ファイルを、TreeTagger にかけて、*.pos という拡張子のファイルに変換するコマンド。
***Windows [#hd6c49b5]
以下のバッチ・ファイルをディレクトリ名だけ変更して bin の下に置いて実行
rem TreeTagger (Windows version) を複数ファイルに連続実行させるバッチ・ファイル
@echo off
for %%f in (C:\Users\tono\Tools\TreeTagger\bin\*.txt) do tag-english %%f > %%f.pos.txt
現在,自分が使っているバッチファイルは以下の通り:
@echo off
for %%A in (%1) do tag-english %%A > %%A.tag
md tagged
move %%A.tag tagged > nul
-%1 は引数なので,ここにファイル名を *.txt のように指定する。
-tag-englishがどこでも動くように,環境変数でPATHを切っておくこと
-同一ディレクトリに tagged というフォルダを作り,そこに移動するというのが3行名以下のコマンド