回答編集履歴
2
改善
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
エラーの原因
|
1
|
+
#### エラーの原因
|
2
2
|
python2系のMeCabバインディングは、パース系のメソッドの引数がstr(python3のbytesに該当)ですが、python3系のMeCabバインディングではstr(python2のunicodeに該当)です。
|
3
3
|
|
4
4
|
こう直せばとりあえず動くかと。他にエラーが出ないかどうかは確認していませんが。
|
@@ -8,11 +8,47 @@
|
|
8
8
|
|
9
9
|
---
|
10
10
|
|
11
|
-
そのフォーマットの商品名をMeCabで
|
11
|
+
そのフォーマットの商品名をMeCabで形態素解析するのは、困難です。
|
12
12
|
|
13
|
+
かなりグチャグチャになります(辞書にもよるとは思いますが……)。
|
14
|
+
|
15
|
+
```
|
16
|
+
$ mecab
|
17
|
+
コカ・コーラ 綾鷹 お茶 ペットボトル (2L×6本)×2箱
|
18
|
+
コカ・コーラ 名詞,固有名詞,一般,*,*,*,コカ・コーラ,コカコーラ,コカコーラ
|
19
|
+
綾 名詞,一般,*,*,*,*,綾,アヤ,アヤ
|
20
|
+
鷹 名詞,一般,*,*,*,*,鷹,タカ,タカ
|
21
|
+
お茶 名詞,一般,*,*,*,*,お茶,オチャ,オチャ
|
22
|
+
ペットボトル 名詞,一般,*,*,*,*,ペットボトル,ペットボトル,ペットボトル
|
23
|
+
( 名詞,サ変接続,*,*,*,*,*
|
24
|
+
2 名詞,数,*,*,*,*,*
|
25
|
+
L× 名詞,一般,*,*,*,*,*
|
26
|
+
6 名詞,数,*,*,*,*,*
|
27
|
+
本 名詞,接尾,助数詞,*,*,*,本,ホン,ホン
|
28
|
+
) 名詞,サ変接続,*,*,*,*,*
|
29
|
+
× 記号,一般,*,*,*,*,×,カケル,カケル
|
30
|
+
2 名詞,数,*,*,*,*,*
|
31
|
+
箱 名詞,接尾,助数詞,*,*,*,箱,ハコ,ハコ
|
32
|
+
EOS
|
33
|
+
Clover カットワークはさみ 115 サック付き 36-666
|
34
|
+
Clover 名詞,固有名詞,組織,*,*,*,*
|
35
|
+
カット 名詞,サ変接続,*,*,*,*,カット,カット,カット
|
36
|
+
ワーク 名詞,一般,*,*,*,*,ワーク,ワーク,ワーク
|
37
|
+
はさみ 名詞,一般,*,*,*,*,はさみ,ハサミ,ハサミ
|
38
|
+
115 名詞,数,*,*,*,*,*
|
39
|
+
サック 名詞,一般,*,*,*,*,サック,サック,サック
|
40
|
+
付き 名詞,接尾,一般,*,*,*,付き,ツキ,ツキ
|
41
|
+
36 名詞,数,*,*,*,*,*
|
42
|
+
- 名詞,サ変接続,*,*,*,*,*
|
43
|
+
666 名詞,数,*,*,*,*,*
|
44
|
+
EOS
|
45
|
+
```
|
46
|
+
|
47
|
+
むしろ何もしなくてもスペースで適当に区切られているのですから、空白区切りで済ませられませんかね。
|
48
|
+
|
13
49
|
---
|
14
50
|
|
15
|
-
自分で書くのは辛いので、ライブラリを使いましょう。
|
51
|
+
TF-IDFの計算を自分で書くのは辛いので、ライブラリを使いましょう。
|
16
52
|
|
17
53
|
メジャーな選択肢としては、
|
18
54
|
- sklearnの実装
|
@@ -21,7 +57,7 @@
|
|
21
57
|
くらいしかないと思います。gensimの方は使い方が少し面倒くさいので、sklearnを勧めます。
|
22
58
|
(gensimをけなしている訳ではなく、gensimには自由度が高かったり、パフォーマンスやコードの再利用性などが高まるように色々配慮してくれているという利点があります。ただ、それを使いこなすために手間が増えるのは事実です)
|
23
59
|
|
24
|
-
参考リンク
|
60
|
+
#### 参考リンク
|
25
61
|
[sklearn.feature_extraction.text.TfidfVectorizer — scikit-learn 0.19.2 documentation](http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfVectorizer.html)
|
26
62
|
[scikit-learnでtf-idfを計算する](https://qiita.com/katryo/items/f86971afcb65ce1e7d40)
|
27
63
|
[TF-IDF で文書をベクトル化。python の TfidfVectorizer を使ってみる | コード7区](http://ailaby.com/tfidf/)
|
1
リンク追加。あと説明追加
answer
CHANGED
@@ -19,7 +19,10 @@
|
|
19
19
|
- gensimの実装
|
20
20
|
|
21
21
|
くらいしかないと思います。gensimの方は使い方が少し面倒くさいので、sklearnを勧めます。
|
22
|
+
(gensimをけなしている訳ではなく、gensimには自由度が高かったり、パフォーマンスやコードの再利用性などが高まるように色々配慮してくれているという利点があります。ただ、それを使いこなすために手間が増えるのは事実です)
|
22
23
|
|
23
24
|
参考リンク
|
25
|
+
[sklearn.feature_extraction.text.TfidfVectorizer — scikit-learn 0.19.2 documentation](http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfVectorizer.html)
|
26
|
+
[scikit-learnでtf-idfを計算する](https://qiita.com/katryo/items/f86971afcb65ce1e7d40)
|
24
27
|
[TF-IDF で文書をベクトル化。python の TfidfVectorizer を使ってみる | コード7区](http://ailaby.com/tfidf/)
|
25
28
|
[【python】TF-IDFで重要語を抽出してみる - 静かなる名辞](https://hayataka2049.hatenablog.jp/entry/2018/07/09/190819)(私のブログです。以前似たようなものを書いたので紹介します)
|