hongcheng-analyze-voc.js 1.2 KB

123456789101112131415161718192021222324252627282930
  1. const d=require('../../docs/洪城到家/raw/_merged.json');
  2. const items=d.items.filter(i=>i.content&&i.content.length>5);
  3. console.log('总条数:', items.length);
  4. console.log('');
  5. console.log('=== 平台分布 ===');
  6. const p={};
  7. items.forEach(i=>p[i.platform]=(p[i.platform]||0)+1);
  8. console.log(p);
  9. console.log('');
  10. console.log('=== 情感分布 ===');
  11. const s={};
  12. items.forEach(i=>s[i.sentiment]=(s[i.sentiment]||0)+1);
  13. console.log(s);
  14. console.log('');
  15. console.log('=== 关键词覆盖TOP15 ===');
  16. const k={};
  17. items.forEach(i=>k[i.keyword]=(k[i.keyword]||0)+1);
  18. Object.entries(k).sort((a,b)=>b[1]-a[1]).slice(0,15).forEach(function(kk){console.log(kk[0]+': '+kk[1])});
  19. console.log('');
  20. console.log('=== 高赞TOP10 ===');
  21. items.sort(function(a,b){return (b.likes||0)-(a.likes||0)}).slice(0,10).forEach(function(i){
  22. console.log('['+i.platform+'] ♥'+(i.likes||0)+' '+i.nickname+': '+String(i.content).slice(0,80))});
  23. console.log('');
  24. console.log('=== IP地理分布TOP10 ===');
  25. const ips={};
  26. items.forEach(function(i){if(i.ip)ips[i.ip]=(ips[i.ip]||0)+1});
  27. Object.entries(ips).sort(function(a,b){return b[1]-a[1]}).slice(0,10).forEach(function(kk){console.log(kk[0]+': '+kk[1])});
  28. console.log('');
  29. console.log('=== 假设覆盖 ===');
  30. console.log(d.meta.hypotheses);