如何用python制作画像_利用Python搭建用户画像系统
用户画像是当下很多企业都会提及的概念,多数情况下会和大数据以及营销挂钩。本文将对用户画像的相关知识进行进行简单的介绍,并利用Python去实现一个简单的用户画像系统。
1.什么是用户画像
用户画像可以理解成是海量数据的标签,根据用户的目标、行为和观点的差异,将他们区分为不同的类型,然后每种类型中抽取出典型特征,赋予名字、照片、一些人口统计学要素、场景等描述,形成一个人物原型 。
用户画像 = 自我介绍
简单的来说用户画像等于自我介绍,比如:我的一个好友叫王小震,25岁,摩羯座,从事软件开发工作,超级无敌工作狂,平时喜欢外出爬山,打球、喜欢看书,类型多偏技术和管理,偶尔玩玩LOL等游戏,喜欢美食,但对海鲜过敏,目前还是单身狗一只……
看完之后,是不是感到这个人物十分清晰了?这是因为一个完整的人物画像已经呈现在了你的脑海里。当标签被描述得越多,你的用户画像就越清晰。
2.做用户画像的意义
a.从公司战略层面来说,好的用户画像可以帮助企业进行市场洞察、预估市场规模,从而辅助制定阶段性目标,指导重大决策,提升ROI;更有助于避免同质化,进行个性化营销。
b.从产品本身角度来说,用户画像可以围绕产品进行人群细分,确定产品的核心人群,从而有助于确定产品定位,优化产品的功能点。例如美妆类app,则前期可大致锁定画像一二线城市,喜欢时尚,年龄段在18至35之间的女性。
c.从数据管理角度来说,用户画像有助于建立数据资产,挖掘数据的价值,使数据分析更为精确,甚至可以进行数据交易,促进数据流通。互联网营销行业中常用的DMP(Data Management Platform)就是用户画像使用的一个好例子。
3.用户画像的基本要素
用户画像主要从静态属性、动态属性、消费属性和心理属性来划分。
静态属性是勾勒用户画像的基础:性别、年龄、学历、角色、收入、地域、婚姻等。
动态属性是指用户在互联网上的上网行为、娱乐偏好、社交习惯、出行方式以及获取知识的方式,这些都直接反应了用户对你的内容是否感兴趣。
消费属性是指用户的消费水平、消费心理、消费嗜好等,这反映的是用户对花钱有什么看法。到底是喜欢质量好的还是追求品质高的呢?到底是倾向于功能价值还是情感价值?
心理属性是指用户在生活、工作、情感、社交等方面所拥有的个人价值观。
4.构建用户画像的步骤
采集数据:数据的来源有多种,很多公司有自己的CRM系统,或者有智能采集系统日志的工具,常用的采集方式包括API、SDK和传感器采集等,可以通过想要挖掘什么标签来反推需要的数据源。
数据清洗:原始数据源存在“脏数据”,包括数据空缺和噪声、不一致、重复、错误等问题,为了保证后期挖掘的准确性,避免对决策造成影响,须对原始数据进行预处理。
数据标准化:用户画像的建立需要有整合多源数据(跨屏跨媒体)的能力,例如一个实体可能使用多个设备,拥有网络世界的多个账号,则须把多个身份ID组合,建立统一的标准,才能完整标识实体的用户画像。
用户建模:通过算法模型来定义人群的用户画像,常见为分类模型和聚类模型,例如朴素贝叶斯、决策树、SVM,神经网络,k-means等。
标签挖掘:通过平台来进行标签的加工和计算,通常需要部署环境,如通过Hadoop平台进行训练和学习,大规模的并行计算。
标签验证:须通过真实case验证标签挖掘结果的正确性,保证标签对应的处理结果跟预期大体相符。此步骤有时可以跟上个步骤(标签挖掘)对调,即可以先用小样本数据验证模型的可靠性,再依照结果进行调整,再进行挖掘。
数据可视化:即视觉呈现群体或个人的用户画像,包括柱状图/饼状图/表格等,可根据实际情况选择合适的可视化方式。
5.利用Python生成用户画像
上面介绍了用户画像的相关概念、基本要素和构建步骤,下面介绍如何去完成开发,先附上效果图一张
步骤为:获取数据-->分析数据-->生成用户画像-->网站实现
获取数据:在我们的实际开发中,原始数据是通过在数据库中获取,本文为了方便通过test.txt文件读取数据;
分析数据:在该步骤中,我们需要对读取的数据进行切割,并提取关键词及计算关键词的权重,这里我们我们利用Python的一个中文分词工具jieba,如果还没安装的可以使用pip安装(安装命令为:pip install jieba);
生成用户画像:在这个步骤中,我们需要把获得关键词生成云词图,这里借用wordcloud生成云词图(如果还没安装可以通过命令pip install wordcloud进行安装)
# -*- coding: utf-8 -*-
__author__ = 'heroli'
#wordcloud生成中文词云
from wordcloud import WordCloud
import jieba
# 词频计算
import jieba.analyse as analyse
from scipy.misc import imread
import os
from os import path
import matplotlib.pyplot as plt
class WC(object):
# 绘制词云
def draw_wordcloud(self):
#读入一个txt文件
comment_text = open('static/test.txt','r').read()
#结巴分词,生成字符串,如果不通过分词,无法直接生成正确的中文词云
cut_text = " ".join(jieba.cut(comment_text))
result = jieba.analyse.textrank(cut_text, topK=1000, withWeight=True)
# 生成关键词比重字典
keywords = dict()
for i in result:
keywords[i[0]] = i[1]
d = path.dirname(__file__) # 当前文件文件夹所在目录
color_mask = imread("static/images/alice.png") # 读取背景图片
cloud = WordCloud(
#设置字体,不指定就会出现乱码
font_path="./fonts/Simfang.ttf",
# font_path=path.join(d,'simsun.ttc'),
width=200,
height=200,
#设置背景色
background_color='white',
#词云形状
mask=color_mask,
#允许最大词汇
max_words=2000,
#最大号字体
max_font_size=40
)
word_cloud = cloud.generate(cut_text)# 产生词云
word_cloud.to_file("static/images/user_img.jpg") #保存图片
# 显示词云图片
# plt.imshow(word_cloud)
# plt.axis('off')
# plt.show()
if __name__ == '__main__':
wc = WC()
wc.draw_wordcloud()
网站实现:网站通过flask实现,Flask是一个使用python编写的轻量级 Web 应用框架。由于其简单易学,非常适合与编写轻量级的web应用,故本文选择flask进行网站的实现。代码比较简单,下面为主要代码:
# -*- coding:utf-8 -*-
from flask import Flask
from flask import render_template
import userWordCould
app = Flask(__name__)
@app.route('/')
def all():
return '开启探索用户画像的大门'
@app.route('/portrait/')
@app.route('/portrait/')
def portrait(name=None):
wc = userWordCould.WC()
wc.draw_wordcloud()
return render_template('portrait.html', name=name)
if __name__ == '__main__':
app.run(debug=True,host='127.0.0.1')
以下为html代码:
用户画像
.body{
margin: 0 auto;
text-align: center;
}
.body img{
margin: 0 auto;
text-align: center;
}
应用实现完毕,项目结构如下:
进入项目文件夹,启动项目:
python portrait.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 263-119-555
然后再浏览器打开http://127.0.0.1:5000/portrait地址即可看到上面的用户画像效果页面。
需要完整代码的请留下邮箱~~~
如何用python制作画像_利用Python搭建用户画像系统相关推荐
- 利用python制作拼图_利用python制作拼图小游戏的全过程
开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 关注公众号:Python学习指南,回复"拼图"即可获取源码 环境搭建 安装P ...
- 【用户画像】用户画像简介、用户画像的架构、搭建用户画像管理平台
文章目录 一 用户画像简介 1 用户画像 2 定位 2 应用 3 用户标签 (1)标签分级 (2)标签分类 二 用户画像的架构 1 画像处理流程 2 画像标签数据应用 3 用户画像管理平台 三 搭建用 ...
- 简单人物画像_天天谈【用户画像】95%的人根本不知道自己在说什么
很多人对用户调研.用户群体.用户画像这几个概念是混淆的,这三个其实不断深入的过程.用户画像( personas)的概念最早由Alan Cooper提出--"Personas are a co ...
- 目标客户画像_产品设计之用户画像的目的和分类
纵览成功的产品案例,他们服务的目标用户通常都非常清晰,特征明显,体现在产品上就是专注.极致,能解决核心问题.用户画像还可以在一定程度上避免产品设计人员草率的代表用户.代替用户发声是在产品设计中常出现的 ...
- 如何用python画心形_利用python画一颗心的方法示例
前言 Python一般使用Matplotlib制作统计图形,用它自己的说法是'让简单的事情简单,让复杂的事情变得可能'.用它可以制作折线图,直方图,条形图,散点图,饼图,谱图等等你能想到的和想不到的统 ...
- python高斯求和_利用Python进行数据分析(3)- 列表、元组、字典、集合
本文主要是对Python的数据结构进行了一个总结,常见的数据结构包含:列表list.元组tuple.字典dict和集合set. image 索引 左边0开始,右边-1开始 通过index()函数查看索 ...
- 怎么用python编写记事本_利用Python开发实现简单的记事本
利用Python开发实现简单的记事本 最近想对 python 加深学习一下,同时也是想试着做一些东西,所以使用 python, 结合 Tkinter 来做一个简单的跨平台记事本.最终实现的记事本如下, ...
- python照片墙地图_利用python生成照片墙的示例代码
PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了.其官方主页为:PIL. PIL历 ...
- python图色检测_利用python打开摄像头及颜色检测方法
最近两周由于忙于个人项目,一直未发言了,实在是太荒凉了....,上周由于项目,见到Python的应用极为广泛,用起来也特别顺手,于是小编也开始着手学习Python,-下面我就汇报下今天的学习成果吧 小 ...
最新文章
- java integer int 比较_java Integer和int之间的比较问题是什么?
- JVM 面试考点总结
- 数据蒋堂 | 存储和计算技术的选择
- 面试题目之 ----使用非迭代方法快速排序
- Kubernetes天生对多云策略的支持
- 简单工厂抽象工厂工厂方法_让工厂美丽
- QStandardItemModel——数据模型
- 局域网Maven Java包批量上传的方法
- JVM内存与垃圾回收篇
- 程序员10个必须有的Android应用程序
- 容量治理-扩容、限流和降级
- Android UI开发神兵利器之设计资源
- 仿时钟表盘自定义view
- 嵌套在iframe页面打印去掉页眉页尾
- 【微信小程序】 map 组件 callout 自定义气泡 (实实在在的讲解)
- 访问服务器文件夹缩略图加载很慢,win10缩略图加载慢怎么办_win10电脑加载缩略图很慢处理方法-win7之家...
- 打工人的「周游世界」,AI算法帮你实现,泪目!
- 2022 QS世界大学排名发布!MIT霸榜,清北冲上全球前20
- 数据库安全-分布式数据库-数据仓库技术-反规范化技术-大数据
- 理解 Thread.Sleep 函数