私はテーブルを持っています:
=========================================================================
| id | stem_before | stem_after | stem_freq | sentence_id | document_id |
=========================================================================
| 1 | a | b | 1 | 0 | 1 |
| 2 | c | d | 1 | 0 | 1 |
| 3 | e | f | 1 | 1 | 1 |
| 4 | g | h | 1 | 2 | 1 |
| 5 | i | j | 2 | 0 | 2 |
| 6 | k | l | 1 | 0 | 2 |
=========================================================================
私は 2 つのステップでカウントしたい: ステップ 1 は、 の値の合計で 1 を割るstem_freq
ことsentence_id
ですdocument_id
。ステップ 2 は、最初のステップの結果に次の値を乗算します。stem_freq
例えば :
document_id
= 1 および= 0のデータの場合sentence_id
、最初のステップ: 1/(1+1)
= 0.5、id
= 1 の 2 番目のステップは1*0.5
= 0.5 です。id
= 2 は1*0.5
= 0.5 です。
document_id
= 2 および= 0のデータの場合sentence_id
、最初のステップ: 1/(2+1)
= 0.3333、id
= 5 の 2 番目のステップは2*0.3333
= 0.6666、id
= 6 の場合は1*0.3333
= 0.3333。
ここに私のコードがあります:
$query = mysql_query ("SELECT sentence_id, document_id, stem_after,
stem_freq,SUM(stem_freq) as freq
FROM tb_stemming
WHERE document_id ='$doc_id'
GROUP BY(sentence_id)");
while ($row = mysql_fetch_array($query)) {
$a = $row['freq'];
$freq = $row['stem_freq'];
$tf = $freq/$a;
}
しかし、それはすべての異なる文の最初のデータの結果しか得られません:助けてくれませんか? ありがとうございました :)