2017-05-03 7 views
0

단어가 개체 vocab [긍정]에 있으면 wordInDoc 개체 (word : num)를 추가합니다. 왜?텍스트로 개체를 자바 스크립트로 분류합니다. naive bayes 분류 자 ​​

이 내 코드

var nbayes = function(_class, docs) { 
 
    var vocab = { 
 
    positif: { 
 
     wd: ['baik', 'pintar'] 
 
    }, 
 
    negatif: { 
 
     wd: ['buruk', 'jelek'] 
 
    } 
 
    } 
 
    var wordInDoc = {} 
 
    var sumDocs = 0; 
 
    docs = docs.split(' ') 
 
    var wd = 'wd' 
 
    for (var word of docs) { 
 
    if (word in vocab[_class][wd]) { 
 
     var delta = 1 
 
     wordInDoc[word] = 0 
 
     wordInDoc[word] += delta 
 
     sumDocs++ 
 
    } 
 
    console.log(wordInDoc, sumDocs) 
 
    } 
 

 
}; 
 

 
nbayes('positif', 'baik dan rajin') 
 
nbayes('negatif', 'nakal dan bodoh')

답변

0

이 당신이 찾고 있던 해결책이다?

'docs'배열을 반복 한 다음 'vocab [_class] [wd]'에서 일치하는 색인을 확인하십시오.

존재하지 않는 클래스 '_class '에 대해서는 다른 검증이 수행되어야합니다. 솔루션

var nbayes = function(_class, docs) { 
 
    var wordInDoc = {}; 
 
    var sumDocs = 0; 
 
    var wd = 'wd'; 
 
    var word; 
 
    var vocab = { 
 
    positif: { 
 
     wd: ['baik', 'pintar'] 
 
    }, 
 
    negatif: { 
 
     wd: ['buruk', 'jelek'] 
 
    } 
 
    } 
 
    
 
    docs = docs.split(' '); 
 
    
 
    for (var i = 0;i < docs.length; i++) { 
 
    word = docs[i]; 
 
    if (vocab[_class] && vocab[_class][wd].indexOf(word) !== -1) { 
 
     var delta = 1; 
 
     wordInDoc[word] = 0; 
 
     wordInDoc[word] += delta; 
 
     sumDocs++; 
 
    } 
 
    console.log(wordInDoc, sumDocs) 
 
    } 
 

 
}; 
 

 
nbayes('positif', 'baik dan rajin') 
 
nbayes('negatif', 'nakal dan bodoh')

+0

감사의 친구 –