Improve hashtag trend detection
This commit is contained in:
parent
03fbae7b6d
commit
ebde84214e
|
@ -8,6 +8,7 @@ import Note from '../../../../models/note';
|
|||
const rangeA = 1000 * 60 * 30; // 30分
|
||||
const rangeB = 1000 * 60 * 120; // 2時間
|
||||
const coefficient = 1.5; // 「n倍」の部分
|
||||
const requiredUsers = 3; // 最低何人がそのタグを投稿している必要があるか
|
||||
|
||||
/**
|
||||
* Get trends of hashtags
|
||||
|
@ -42,7 +43,7 @@ module.exports = () => new Promise(async (res, rej) => {
|
|||
return res([]);
|
||||
}
|
||||
|
||||
const tags = [];
|
||||
let tags = [];
|
||||
|
||||
// カウント
|
||||
data.map(x => x._id).forEach(x => {
|
||||
|
@ -57,6 +58,9 @@ module.exports = () => new Promise(async (res, rej) => {
|
|||
}
|
||||
});
|
||||
|
||||
// 最低要求投稿者数を下回るならカットする
|
||||
tags = tags.filter(tag => tag.count >= requiredUsers);
|
||||
|
||||
//#region 2. 1で取得したそれぞれのタグについて、「直近a分間のユニーク投稿数が今からa分前~今からb分前の間のユニーク投稿数のn倍以上」かどうかを判定する
|
||||
const hotsPromises = tags.map(async tag => {
|
||||
const passedCount = (await Note.distinct('userId', {
|
||||
|
|
Loading…
Reference in New Issue