python用户画像难吗,使用 Python+PySpark 做用户画像越来越觉得互联网无隐私了

本文通过Python+PySpark处理用户行为数据,计算用户点击率并进行用户标签化。过程中涉及数据预处理、统计分析及关联查询,揭示了互联网上用户隐私的透明度。最终,数据被保存为本地文件,同时也展示了如何利用用户行为数据进行用户画像构建。
摘要由CSDN通过智能技术生成

使用 Python+PySpark 做用户画像越来越觉得互联网无隐私了

使用 Python+PySpark 做用户画像!越来越觉得互联网无隐私了!

一、数据准备

本文主要是作为一个PySpark的入手实例来做,数据来源网络。 主要用到两个数据文件: action.txt , document.txt 。 下表为 action.txt ,数据格式: userid~docid~behaivor~time~ip ,即: 用户编码~文档编码~行为~日期~IP地址

ef31193e5cd5e20a46e01fb6ac78b7f4.png

1434aa9fd1ebc372a8bc88fad9d3fc6d.png

下表为 document.txt ,数据格式: docid~channelname~source~keyword:score ,即: 文档编码~类别(大类)~主题(细类)~关键词: 权重

2f07c79b4aa7da9a570b988da11975b1.png

二、用户点击率

用户点击率即为 action.txt 文件中每个用户behaivor列中1的数量除以0的数量。

1、创建 SparkSession 对象

e677d13982dd2bfc98f0d9642fffc71a.png

2、读取数据,将数据根据‘~’拆分,获取 userid 和 behavior 两列

click_rate1 数据如下:

3、统计用户的各类行为数

click_rate2 数据如下:

4、将 userid , behavior 和数量取出作为3列,并转为DataFrame格式

4392586017e104181d2aaaff4bc5af43.png

click_rate3_df 数据如下:

898eb104be1301a5902e6a6979959736.png

5、根据 userId 进行分组,将 behavior 列数据进行旋转作为列标数值为 cnt 。 并将 behavior 的0和1替换为 “browse” 和 ”click” 。

click_rate5 数据如下:

cc1b291545b927dca4ff789249b27eac.png

6、填充缺失值

e6a2d7d367427fb2277dc4d5124a4aa1.png

click_rate6 数据如下:

00a7eedda4872b9e41906500e9ab0ab8.png

7、将计算的数据作为新列添加到数据

click_rate 数据如下:

94009a7d8667f7359f66fc9567aa115a.png

8、将最后处理的数据保存到本地,关闭SparkSession

最后保存到本地的数据为多个文件,每个文件的格式如下:

a9aebfd7fd48231a650abd2c8f45e0b8.png

c09a5f52fd141a911f52e13e1a999a28.png

三、用户标签

使用主题(细类)给用户打标签

1、读取 docunment.txt ,获取 docid 、 source 两列,即文档编码和主题(细类)两列

sources_df 数据如下:

1640b789ecfb7464f68bc8b1116dc27e.png

2、读取 action.txt ,只获取具有点击行为的 userid 和 docid 数据,即 behavior 为1的数据。

actions_df 数据如下:

137889da6a8f91c5f4bab8e93bade37d.png

3、创建两个DataFrame的临时视图

4、进行关联查询

e0745dd4fa254c9a7a96fa1f6447f58b.png

interestTags 数据如下:

08fddf0555d0511ca5573fb83f148373.png

5、将最后处理的数据保存到本地,关闭SparkSession

导出后的数据如下:

05d1055590285f599ec7eee037a62617.png

踩雷点:

1、代码开发时,可以每个操作跟一个action,方便查看数据,跑批的时候不需要每个都跟,只需要最后一个action,否则会给机器增加很多工作量。

2、中间过程生成的DataFrame必须先建立临时视图,后面才能使用,否则会报错。

使用 Python+PySpark 做用户画像越来越觉得互联网无隐私了相关教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值