Rename
This commit is contained in:
parent
c5bb7dabf9
commit
e891b34d61
5 changed files with 0 additions and 0 deletions
45
src/tools/analysis/predict-user-interst.ts
Normal file
45
src/tools/analysis/predict-user-interst.ts
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
import Post from '../../api/models/post';
|
||||
import User from '../../api/models/user';
|
||||
|
||||
export async function predictOne(id) {
|
||||
console.log(`predict interest of ${id} ...`);
|
||||
|
||||
// TODO: repostなども含める
|
||||
const recentPosts = await Post.find({
|
||||
user_id: id,
|
||||
category: {
|
||||
$exists: true
|
||||
}
|
||||
}, {
|
||||
sort: {
|
||||
_id: -1
|
||||
},
|
||||
limit: 1000,
|
||||
fields: {
|
||||
_id: false,
|
||||
category: true
|
||||
}
|
||||
});
|
||||
|
||||
const categories = {};
|
||||
|
||||
recentPosts.forEach(post => {
|
||||
if (categories[post.category]) {
|
||||
categories[post.category]++;
|
||||
} else {
|
||||
categories[post.category] = 1;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
export async function predictAll() {
|
||||
const allUsers = await User.find({}, {
|
||||
fields: {
|
||||
_id: true
|
||||
}
|
||||
});
|
||||
|
||||
allUsers.forEach(user => {
|
||||
predictOne(user._id);
|
||||
});
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue