长尾词挖掘-如何在百万级的数据里找到别人正在赚钱的项目
2023-05-07 04:10:21
长尾词挖掘思路来源:
君言:如何在百万级的数据里找到别人正在赚钱的项目5290 赞同 · 236 评论文章

作为一名菜鸟算法工程师对里面的数据分析思路很感兴趣,趁着周末就实操了一遍期望也能挖掘点赚钱的项目,主要代码如下:
import numpy as np
from numpy.random import permutation
import pandas as pd
import sklearn as sklearn
import matplotlib.pyplot as plt
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer
import jieba
from datetime import datetime, date, timedelta
import pickle
import sys
import os
import warnings
warnings.filterwarnings(ignore)
%matplotlib inline
pd.set_option(display.max_columns, None)
pd.set_option(display.float_format, lambda x: %.6f % x)
plt.rcParams[font.sans-serif]=[SimHei]
plt.rcParams[axes.unicode_minus]=False
导入停用词
停用词库来源:(https://github.com/goto456/stopwords)
stop_words_df = pd.read_csv(baidu_stopwords.csv)
stop_words_df.head()
导入从5118下载的怎么长尾词(需要开通VIP才能下载)
长尾关键词挖掘_关键词挖掘工具_关键词查询 - 5118营销大数据ci.5118.com/?promote=pp2020
how_df = pd.read_csv(怎么长尾词_1602384585.csv,encoding="gbk")
how_df.info()
<class pandas.core.frame.DataFrame>
RangeIndex: 500000 entries, 0 to 499999
Data columns (total 12 columns):
关键词 500000 non-null object
长尾词数量 500000 non-null int64
搜索结果 500000 non-null object
SEM点击价格(SVIP特权数据) 0 non-null float64
流量特点(SVIP特权数据) 0 non-null float64
流量指数(VIP特权数据) 500000 non-null int64
移动指数(VIP特权数据) 500000 non-null object
360指数(VIP特权数据) 500000 non-null object
竞价公司数量(VIP特权数据) 500000 non-null object
PC日检索量(VIP特权数据) 500000 non-null object
移动日检索量(VIP特权数据) 500000 non-null object
竞价竞争激烈程度(VIP特权数据) 500000 non-null object
dtypes: float64(2), int64(2), object(8)
memory usage: 45.8+ MB
how_df.head()

去除长度少于5和超过20的关键词
words_df = how_df[(how_df[关键词].str.len() > 5) & (how_df[关键词].str.len() < 20)][[关键词]]
words_df.head()

words_df[wlen] = words_df[关键词].str.len()
words_df.columns = [words,wlen]
words_df.head()

使用jieba分词统计词频
jieba官网:(https://github.com/fxsjy/jieba)
import pdb
def calc_word_freq(words, words_freq_dict, stop_words_set):

训练模型用于统计词频和进行相似度计算
words_df.head()

# 训练模型
长尾词分类
from sklearn.cluster import KMeans
import timeit
# 假设分为100个类别
# 无监督方法分类
执行速度
Mac 8G内存,50w个词7分钟跑完,看上去速度还行
预测长尾词类别
words_df[words_class] = kmeans.predict(cv_vec)
输出每个分类的长尾词库
for i in range(1,101):
words_df[words_df.words_class == i][[words]].sort_values(by=words).to_csv(class_+str(i)+.csv, index=None, columns=[words])
class_1 = pd.read_csv(class_36.csv)
class_1.head(10)

看上去分类结果还可以。
以上就是关于《长尾词挖掘-如何在百万级的数据里找到别人正在赚钱的项目》的全部内容,本文网址:https://www.7ca.cn/baike/24821.shtml,如对您有帮助可以分享给好友,谢谢。
声明