数据分析-51-小Red书达人画像(包含代码和数据)

算法学习4对1辅导论文辅导核心期刊
项目的代码和数据下载可以通过公众号滴滴我


项目背景

小红书的用户画像是小红书品牌营销的必备技能,也是小红书推广种草的一个重要前提。通过对小红书用户画像进行分析,对品牌进行精准营销,实现更高的流量转化。

字段描述

该数据共1000条数据,共16个字段,分别是

  • 达人名称
  • 小红书号
  • 性别
  • 地域
  • 简介
  • 更新时间
  • 认证信息
  • 粉丝数
  • 赞藏总数
  • 品牌合作人
  • 签约MCN
  • 图文笔记报价
  • 视频笔记报价
  • 达人标签
  • 认证类型
  • 商业笔记数

以下是表的部分数据:
在这里插入图片描述

一、了解并处理数据

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set(font='Microsoft YaHei',font_scale=1.1,palette = 'Set2')
from warnings import filterwarnings
filterwarnings('ignore')
pd.set_option("display.max_columns",30) #设置显示的最大列数

1、读取数据

# 导入数据
data_dp = pd.read_csv('达人列表小红书.csv')
data_dp.shape

(1000, 16)

data_dp.head()

在这里插入图片描述

2、查看数据类型

data_dp.info()

在这里插入图片描述

3、统计空值并对空值进行处理

数据分析过程中对空值的处理有几种方式:填充法,删除法,替换法,这里采用填充的方式对空值进行处理

data_dp.isnull().sum()

在这里插入图片描述

# 处理空值
data_dp['地域'].fillna("未填写",inplace = True)
data_dp['认证信息'].fillna("无认证信息",inplace = True)
data_dp['签约MCN'].fillna("未签约",inplace = True)
data_dp['图文笔记报价'].fillna("无报价",inplace = True)
data_dp['视频笔记报价'].fillna("无报价",inplace = True)

4、了解关键字段信息

columns_list = ['性别','认证信息','品牌合作人', '签约MCN','达人标签','认证类型']
for l in columns_list:
    print(l,":")
    print(data_dp[l].unique())
    print() #打印空行

在这里插入图片描述

5、用lambda函数处理关键字段

由于认证信息中存在 “ | ”字符,为了统计的结果更准确些,这里采取重新提取新字段的方式来进行处理,这里使用匿名函数 lambda来处理并创建新的列

data_dp['认证信息_2'] = data_dp['认证信息'].apply(lambda x:x.split(' | ')[1] if " | " in x else x)
data_dp['是否有认证信息'] = data_dp['认证信息_2'].apply(lambda x:"无" if x in "无认证信息" else "有")
data_dp['是否有签约'] = data_dp['签约MCN'].apply(lambda x:"未签约" if x in "未签约" else "有签约")

关键字段基本整理完整,下面进行数据的统计与可视化

二、达人信息可视化

1、性别 & 品牌合作人 & 认证类型 的分布

plt.figure(figsize = (16,13))
n = 0
for x in ['性别','品牌合作人','是否有认证信息','是否有签约','认证类型']:
    size_n = data_dp[x].value_counts()
    n += 1
    plt.subplot(2,3,n)
    plt.pie(size_n.values,labels = size_n.index,wedgeprops={'width':0.35,'edgecolor':'w'},
    autopct='%.1f%%',pctdistance=0.8,startangle = 180)
    plt.axis("equal")
    plt.title(x)
plt.show()

在这里插入图片描述
假设原始数据无误,则根据上图得到信息如下:

  • 77%的达人为女性;
  • 64% 的达人账号没有认证信息
  • 超过98%的账号为企业认证类型
  • 超93% 的达人均为品牌合作人

2、认证信息排名 TOP20

result = data_dp['认证信息_2'].value_counts()[:21].reset_index(name = 'total')
result = result[result['index']!='无认证信息']
plt.figure(figsize = (12,6))
sns.barplot(x = result['index'],y = result['total'],data = result,color = 'CadetBlue')
plt.xticks(rotation = 45)
plt.ylabel('')
plt.show()

在这里插入图片描述

3、有认证信息的达人中签约最多博主排名

result = data_dp[(data_dp['是否有签约']== '有签约')&(data_dp['是否有认证信息']=='有')]
result = result['认证信息_2'].value_counts().reset_index(name = 'total')

plt.figure(figsize = (12,6))
sns.barplot(x = result['index'],y = result['total'],data = result,color = 'CadetBlue')
plt.xticks(rotation = 75)
plt.ylabel('')
plt.xlabel('')
plt.show()

在这里插入图片描述

4、达人标签

import pyecharts.options as opts
from pyecharts.charts import WordCloud

result = data_dp['达人标签'].value_counts().reset_index(name = 'total')
x_data = result['index'].tolist()
y_data = result['total'].tolist()

(
    WordCloud()
    .add(" ", [list(z) for z in zip(x_data, y_data)],word_size_range=[30, 90])
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="达人标签排名", title_textstyle_opts=opts.TextStyleOpts(font_size=18)
        ),
        tooltip_opts=opts.TooltipOpts(is_show=True),
    )
).render_notebook()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI研习星球

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值