【数据可视化-16】珍爱网上海注册者情况分析
🧑 博主简介:曾任某智慧城市类企业
算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

【数据可视化-16】珍爱网上海注册者情况分析
- 一、引言
- 二、数据来源与预处理
- 2.1 python库与数据导入
- 2.2 数据清洗
- 三、数据可视化
- 3.1 性别比例分析
- 3.2 年龄分布分析
- 3.3 婚姻状况分析
- 3.4 自我介绍词云图分析
- 四、总结
一、引言
随着春节的结束,相亲市场逐渐升温。为了更好地了解上海珍爱网的注册人员信息,进行了一次数据爬取,并使用 pyecharts 进行了可视化分析。以下是详细报告。
二、数据来源与预处理
爬取了珍爱网上海地区的注册人员信息,包括性别、城市、年龄、薪资或学历、婚姻状况、身高和自我介绍等字段。数据保存在一个 CSV 文件中。
2.1 python库与数据导入
首先,需要读取数据并进行预处理。以下是导入相应的库读取数据的代码:
import pandas as pd
import numpy as np
import jieba
import time from pyecharts.charts import Bar,Line,Map,Page,Pie
from pyecharts import options as opts
from pyecharts.globals import SymbolType # 读取CSV文件
df = pd.read_csv('shanghai_zhenai_data.csv')

2.2 数据清洗
对数据字段进行清洗,产生结构化的特征。
df1["age_cut"]=pd.cut(df1["年龄"],bins=[18,30,42,54,66,78])
df1["age_cut2"]=pd.qcut(df1["年龄"],5,labels=['青年', '壮年', '中年', '老年','晚年'])

三、数据可视化
3.1 性别比例分析
首先,分析上海珍爱网注册人员的性别比例。以下是使用 pyecharts 创建性别柱状图的代码:
temp = df1['性别'].value_counts().reset_index()
temp.columns = ['性别','计数']
data_pair = [(row['性别'], row['计数']) for _, row in temp.iterrows()]
top_city = sorted(data_pair, key=lambda x: x[1], reverse=True)### 不同的柱子使用不同的颜色
data_pair = []
for k, v, c in zip([x[0] for x in top_city], [x[1] for x in top_city], ['red', 'blue']):data_pair.append(opts.BarItem(name=k,value=v,itemstyle_opts=opts.ItemStyleOpts(color=c)))bar = (Bar(init_opts=opts.InitOpts(theme='dark',width='1000px', height='800px')).add_xaxis([x[0] for x in top_city]).add_yaxis("", data_pair).set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='insideRight',font_style='italic',color='pink'),).set_global_opts(title_opts=opts.TitleOpts(title="珍爱网上海相亲性别状况表现",subtitle="数据截止日期:2025年1月24日, 制图公众号--NLP随手记---",pos_top='2%',pos_left="center",title_textstyle_opts=opts.TextStyleOpts(color='#228be6',font_size=20)),xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=45)), #legend_opts=opts.LegendOpts(is_show=True),)# .reversal_axis() #是否旋转坐标轴)
bar.render_notebook()
# bar.render("珍爱网上海相亲性别表现.html")

通过上图,可以知道上海该时间段,注册的相亲者中,男生比女生要多。
3.2 年龄分布分析
接下来,我们分析上海珍爱网注册人员的年龄分布。以下是使用 pyecharts 创建年龄分布饼状图的代码:
df2 = df1.age_cut2.value_counts().reset_index()
data_pair = [[df2.loc[i]['index'],df2.loc[i]['age_cut2']] for i in range(len(df2))]pie = (Pie(init_opts=opts.InitOpts(width='1000px', height='800px')).add(series_name="",data_pair=data_pair,radius=["30%",'50%'],center=["38%", "50%"],label_opts=opts.LabelOpts(is_show=False, position="center"),).set_global_opts(title_opts=opts.TitleOpts(title='珍爱网上海相亲年龄状况表现',subtitle="数据截止日期:2025年1月24日, 制图公众号--NLP随手记---",pos_top='2%',pos_left="center",title_textstyle_opts=opts.TextStyleOpts(color='#228be6',font_size=20)),# visualmap_opts=opts.VisualMapOpts(# is_show=False,# max_=600,# pos_top='70%',# pos_left='20%',# range_color=['blue', 'green', 'yellow', 'red']# ),legend_opts=opts.LegendOpts(is_show=True, pos_right="15%", pos_top="8%",orient="vertical"),).set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {d}%")).set_colors(['#EF9050', '#3B7BA9', '#6FB27C','#CC0033','#003399'])
)
pie.render_notebook()
pie.render("pie_set_color.html")

通过上图,可以知道上海该时间段,注册的相亲者中,相亲的人的年龄状况还是比较均衡的,中年人占比稍稍多一下。
3.3 婚姻状况分析
然后,分析上海珍爱网注册人员的婚姻状况。以下是使用 pyecharts 创建婚姻状况饼图的代码:

pie = (Pie(init_opts=opts.InitOpts(width='1000px', height='800px')).add(series_name="",data_pair=[list(z) for z in zip(["离异", "未婚", "丧偶"],[71, 40, 9],)],radius=["30%",'50%'],center=["38%", "50%"],label_opts=opts.LabelOpts(is_show=False, position="center"),).set_global_opts(title_opts=opts.TitleOpts(title='珍爱网上海婚姻状况表现',subtitle="数据截止日期:2025年1月24日, 制图公众号--NLP随手记---",pos_top='2%',pos_left="center",title_textstyle_opts=opts.TextStyleOpts(color='#228be6',font_size=20)),# visualmap_opts=opts.VisualMapOpts(# is_show=False,# max_=600,# pos_top='70%',# pos_left='20%',# range_color=['blue', 'green', 'yellow', 'red']# ),legend_opts=opts.LegendOpts(is_show=True, pos_right="15%", pos_top="8%",orient="vertical"),).set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {d}%")).set_colors(['#EF9050', '#3B7BA9', '#6FB27C'])
)
pie.render_notebook()
pie.render("珍爱网上海婚姻状况表现.html")

通过上图,可以知道上海该时间段,注册的相亲者中,离异是最主要的因素。
3.4 自我介绍词云图分析
这里我们将使用stylecloud库来绘制词云图,看看自我介绍的词云图的分布情况,首先按照stylecloud库
!pip install stylecloud
其次,编写自我介绍的清洗函数,具体函数如下;
def get_cut_words(content_series):# 读入停用词表stop_words = [] with open("stopwords.txt", 'r') as f:lines = f.readlines()for line in lines:stop_words.append(line.strip())# 添加关键词my_words = ['同频共振', '知冷暖', '毕业落户', '外冷内热', '造梦者','外冷内热','性格相投'] for i in my_words:jieba.add_word(i) # 自定义停用词my_stop_words = ['设施', '学校', '我校', '希望', '...','一个','增加''理论', '建议', '希望', '学生', '博客','豆瓣', '叶滑生','简书', '全国', '增加', '建设', '搞好','基于','CSDN','2019'] stop_words.extend(my_stop_words) # 分词content=';'.join([ str(c) for c in content_series.tolist()])word_num = jieba.lcut(content)# 条件筛选word_num_selected = [i for i in word_num if i not in stop_words and len(i)>=2]return word_num_selected
最后绘制词云图;
import stylecloud
from pathlib import Path
from IPython.display import Image # 用于在jupyter lab中显示本地图片# 绘制词云图
stylecloud.gen_stylecloud(text=' '.join(get_cut_words(content_series=df1["自我介绍"]) ),collocations=False,font_path=(r'C:\\Windows\Fonts\SimHei.ttf'),#2-1字体的Path路径,icon_name='fas fa-heart',size = 578,output_name='上海珍爱网的自我介绍数据可视化.png'
)
Image(filename='上海珍爱网的自我介绍数据可视化.png')

注意:在实际运行上述代码时,你需要确保已经安装了 jieba 分词库。
四、总结
通过以上分析,我们可以得出以下结论:
- 上海珍爱网注册人员的性别情况,男生比女生稍多。
- 年龄分布主要集中比例较为均衡,中年人稍多一些。
- 婚姻状况以离异和未婚为主,说明相亲市场的主要需求群体。
- 自我介绍中出现了许多与性格、爱好、工作等相关的词汇,反映了注册人员的自我认知和期望。
希望这份报告能为关注上海珍爱网相亲市场的人员提供一定的参考和帮助。祝大家早日找到心仪的另一半!
相关文章:
【数据可视化-16】珍爱网上海注册者情况分析
🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…...
c/c++蓝桥杯经典编程题100道(21)背包问题
背包问题 ->返回c/c蓝桥杯经典编程题100道-目录 目录 背包问题 一、题型解释 二、例题问题描述 三、C语言实现 解法1:0-1背包(基础动态规划,难度★) 解法2:0-1背包(空间优化版,难度★…...
电赛DEEPSEEK
以下是针对竞赛题目的深度优化方案,重点解决频率接近时的滤波难题和相位测量精度问题: 以下是使用NI Multisim 14.3实现本项目的详细解决方案: 一、基础要求实现方案(模块化设计) 1. 双频信号发生电路 电路结构&…...
VSOMEIP ROUTING应用和CLIENT应用之间交互的消息
#define VSOMEIP_ASSIGN_CLIENT 0x00 // client应用请求分配client_id #define VSOMEIP_ASSIGN_CLIENT_ACK 0x01 // routing应用返回分配的client_id #define VSOMEIP_REGISTER_APPLICATION 0x02 // client应用注册someip应用 #…...
HTML之基本布局div|span
HTML基本布局使用 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"width<device-width>, initial-scale1.0"><title>布局</title> <…...
Linux下学【MySQL】常用函数助你成为数据库大师~(配sql+实操图+案例巩固 通俗易懂版~)
绪论 每日激励:“唯有努力,才能进步” 绪论: 本章是MySQL中常见的函数,利用好函数能很大的帮助我们提高MySQL使用效率,也能很好处理一些情况,如字符串的拼接,字符串的获取,进制…...
【Rabbitmq篇】高级特性----TTL,死信队列,延迟队列
目录 一.TTL ???1.设置消息的TTL 2.设置队列的TTL 3.俩者区别? 二.死信队列 定义: 消息成为死信的原因: 1.消息被拒绝(basic.reject 或 basic.nack) 2.消息过期(TTL) 3.队列达到最大长度? …...
机器学习赋能的智能光子学器件系统研究与应用
机器学习赋能的智能光子学器件系统研究与应用 时间: 2025年03月29日-03月30日 2025年04月05日-04月06日 机器学习赋能的光子学器件与系统:从创新设计到前沿应用 课程针对光子学方面的从业科研人员及开发者,希望了解和实践在集成光学/空间…...
尚硅谷课程【笔记】——大数据之Linux【三】
课程视频链接:尚硅谷大数据Linux课程 七、定时任务调度 任务调度:指系统在某个时间执行的特定的命令或程序。 1)系统工作:有些重要的工作必须周而复始地执行。 2)个别用户工作:用户可能希望在某些特定的时…...
Visual Studio踩过的坑
统计Unity项目代码行数 编辑-查找和替换-在文件中查找 查找内容输入 b*[^:b#/].*$ 勾选“使用正则表达式” 文件类型留空 也有网友做了指定,供参考 !*\bin\*;!*\obj\*;!*\.*\*!*.meta;!*.prefab;!*.unity 打开Unity的项目 注意:只是看࿰…...
教程 | MySQL 基本指令指南(附MySQL软件包)
此前已经发布了安装教程安装教程,现在让我们来学习一下MySQL的基本指令。 一、数据库连接与退出 连接本地数据库 mysql -uroot -p # 输入后回车,按提示输入密码(密码输入不可见)若需隐藏密码显示,可使用࿱…...
企业数据集成案例:吉客云销售渠道到MySQL
测试-查询销售渠道信息-dange:吉客云数据集成到MySQL的技术案例分享 在企业的数据管理过程中,如何高效、可靠地实现不同系统之间的数据对接是一个关键问题。本次我们将分享一个具体的技术案例——通过轻易云数据集成平台,将吉客云中的销售渠…...
网络编程 day3
思维导图 以select函数模型为例 思维导图2 对应 epoll模型 应使用的函数 题目 使用epoll函数实现 两个客户端 通过服务器 实现聊天 思路 在原先代码基础上 实现 服务器 发向 客户端 使用客户端在服务器上的 套接字描述符 实现 客户端 接收 服务器…...
Excel 融合 deepseek
效果展示 代码实现 Function QhBaiDuYunAIReq(question, _Optional Authorization "Bearer ", _Optional Qhurl "https://qianfan.baidubce.com/v2/chat/completions")Dim XMLHTTP As ObjectDim url As Stringurl Qhurl 这里替换为你实际的URLDim postD…...
【论文笔记】Are Self-Attentions Effective for Time Series Forecasting? (NeurIPS 2024)
官方代码https://github.com/dongbeank/CATS Abstract 时间序列预测在多领域极为关键,Transformer 虽推进了该领域发展,但有效性尚存争议,有研究表明简单线性模型有时表现更优。本文聚焦于自注意力机制在时间序列预测中的作用,提…...
游戏手柄Type-c方案,支持一边充电一边传输数据
乐得瑞推出LDR6023SS,专门针对USB-C接口手机手柄方案,支持手机快充,支持任天堂游戏机,PS4等设备~同时支持手机充电跟数据传输 1、概述 LDR6023SS SSOP16 是乐得瑞科技针对 USB Type-C 标准中的 Bridge 设备而开发的双 USB-C DRP …...
2. 4 模块化JDK:JDK模块结构与核心模块
第3章:模块化JDK:JDK模块结构与核心模块 JDK 9 将自身拆分为一系列模块,彻底告别传统的“单一JAR(如 rt.jar)”模式。本章深入解析 JDK 的模块化架构、核心模块功能及开发者如何高效利用这些模块。 3.1 JDK 模块化设计…...
每日一题——缺失的第一个正整数
缺失的第一个正整数 题目描述进阶:数据范围: 示例示例 1示例 2示例 3 题解思路代码实现代码解释复杂度分析总结 题目描述 给定一个无重复元素的整数数组 nums,请你找出其中没有出现的最小的正整数。 进阶: 时间复杂度ÿ…...
CEF132 编译指南 MacOS 篇 - 基础开发工具安装实战 (二)
1. 引言 在 macOS 平台上编译 CEF132 之前,首要任务是搭建一个完善的开发环境。与 Windows 和 Linux 环境不同,macOS 的开发环境主要以 Xcode 为核心。本篇将作为 CEF132 编译指南系列的第二篇,详细指导读者如何在 macOS 系统上安装和配置 X…...
vi 是 Unix 和 Linux 系统中常用的文本编辑器
vi是 Unix 和 Linux 系统中常用的文本编辑器,它有几种不同的模式,其中最常用的是命令模式和插入模式。光标控制主要在命令模式下进行,以下是一些常用的vi命令来控制光标位置: • h,j,k,l:分别用于将光标向左、向下、向…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
深度学习水论文:mamba+图像增强
🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
