加载搜索日志¶
加载某天用户query session
In [1]:
import pandas as pd
df = pd.read_csv('/Users/spark/pship/tripdata/top_app_search_user_query.csv')
In [2]:
df.head()
Out[2]:
In [3]:
df.describe()
Out[3]:
In [4]:
df = df.dropna()
有效去重复¶
从每个用户的query session中,获取20个 tag 词 未直接采用全部用户query做tag权重分析,可以避免个别用户产生大量的重复query干扰整体
In [5]:
# %%timeit
import jieba
import jieba.analyse
jieba.load_userdict('/Users/spark/pship/nlp/jieba/dict/trip.dict')#使用自定义旅行字典
# e = d[:5000]
def tags(content):
return','.join(jieba.analyse.extract_tags(content, topK=20))
df['querytag'] = df.querysum.map(tags)
In [6]:
df.head()
Out[6]:
权重词提取¶
使用所有的用户的top 20 query tag,汇总计算关键词出现的权重
In [8]:
alltags = jieba.analyse.extract_tags(','.join(df.querytag), topK=50,withWeight=1)
for i in alltags:
print(i[0],i[1])