20197日目の記事です。PortをTaskで定義する思考実験でした。僕はFringeのデータ分析チームでUniposの分析、開発を行っているtenajimaといいます。この記事ではUniposの分析を行っていく上で僕が作ったmecabのラッパーを紹介したいと思います。experimentalと言っている他にもURLを除いたり、ハッシュタグを除いたりよくするなら自分でつくろうとなりました。その名もwakame!github.compypi.org思想mecabをラップするインターフェイスはjanomeのAnalyzerがイケてるからそれに倣うjanomeになくても僕がほしいと思ったら追加しちゃうjanomeの「me」の部分とmecabの派生からwakameにしました。僕がわかめ好きだからという理由ではありません。*tokenizerはjanomeと同様に使い回すので、最初に1回だけインスタンス化します。今回はNEologdを使うようにします。Tokenizer(use_neologd=True)特定の品詞をとってくる「私は阪神の糸原選手が大好きです」という文章があったとします。この単語から「阪神」や「近本」のように名詞は重要だけど「私」のような代名詞は取ってきたくないとすると以下のようにできます。'大好き']情報をDataFrameで取得したい普段pandasのデータフレームを扱うことが多い場合はDataFrameに変換するメソッドも用意しています。ダイスキ特定の品詞を変換したい文章から特定の品詞を置き換えることもできます。これは名前などをマスクしてあげるときに便利です。"阪神の鳥谷選手とヤクルトの青木選手は大学の同級生です。wakati=True)))某チームの名無しさん選手と某チームの名無しさん選手は大学の同級生です。その他にも...janomeに実装されているFilterや、URLを取り除く(置き換える)Filterなども作っています。次はハッシュタグを取り除くFilterとか作ろうかなと思っています。最後に僕の2019年のツイートでワードクラウドを作ってみる細かいインストール方法などはここでは触れずに、どんな感じで使えるかというのを2019年の僕のツイートを題材にして見ていこうと思います。twitterでデータリクエストするとどかっとデータがもらえるのでそれを使います。ツイート今年は12月7日時点で483ツイートしてるので1日1ツイート以上していますね。それではここからwakameの出番です。stopwords=set(stopwords),)wordcloud.fit_words(importance.to_dict())wordcloud.to_file('wordcloud.png')display_png(Image('./wordcloud.png'))こうやって振り返ってみると今年は確かに阪神最高でしたね。最後のCS滑り込みは感動でした。選手の名前もちょろちょろと入っていますね。来シーズンが待ち遠しいです。他にはPyConが目立ちますね。Pythonもあってよかった。最後にwakameはまだまだ至らぬところが多いですが、OSSとして公開していると「改善しよう」という気概が出るし、我が子のようにかわいいので作ってよかったなと感じています。修正や要望をすぐに反映できるフットワークの軽さがいいです。ドキュメントが整備されてないなどver1.0には遠いのですが、今後もかわいがって育てていこうと思っています。今回僕はこのへんで次は我らが巨匠ことkaz3284にバトンをつなぎます。読者になる@tenajimaをフォローはてなブログをはじめよう!tenajimaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。