我已经计算了我的数据集的TF,而我正在尝试为它计算IDF。我对用于计算的数字感到困惑。
id uid
1 a
1 b
1 c
1 d
2 a
2 b
2 c
2 e
3 b
3 c
3 e
3 f
(3 items)
Occurrence
a = 2
b = 3
c = 3
d = 1
e = 2
f = 1
下面给出了类似的内容:
A B C
A - 2 2
B 2 - 3
C 2 3 -
式
IDF(t,D)=log(Total Number documents/Number of Document matching term);
例如使用(A,B)值为2:我应该如何计算它?
总项目数= 3
文件匹配条款数量=我应该使用A还是B值? (2或3)
(A,B) * log(total / matching)
= 2 * log ( 3 / 2 or 3) ?
答案 0 :(得分:0)
我不确定你的意思是什么(A,B)。
但我假设您的数据集:第一列是文档ID,第二列是术语。
如果我的假设是正确的话: doc id 1是" a b c d" doc id 2是" a b c e" doc id 3是" b c e f"
您的IDF(t,D)公式是log(文档数/包含该术语的文档数)。因此,我们可以计算每个术语的IDF如下:
IDF(' a',D)= log(3/2) IDF(' b',D)= log(3/3) 等等...