资讯动态

Pandas 分析 Nemotron-Personas-UK 人口画像数据集:年龄、婚姻、家庭与教育分布可视化实战

发布时间:2026/10/23 4:49:26 来源:尧图企业网站定制
数据集【免费下载链接】Nemotron-Personas-UK项目地址https://ai.gitcode.com/hf_mirrors/nvidia/Nemotron-Personas-UK点击查看免费下载想用Pandas快速上手分析 Nemotron-Personas-UK 数据集吗这是一个包含100 万条英国合成角色Personas的开源数据字段覆盖年龄、婚姻状态、家庭类型、教育水平等真实人口分布。本文带你用 4 组 Pandas 核心操作read_parquet、value_counts、crosstab、pct逐步画出年龄、婚姻、家庭、教育 4 张可视化图30 分钟掌握人口画像分析方法。 认识 Nemotron-Personas-UK 数据集Nemotron-Personas-UK 由 NVIDIA 与 Locai Labs 联合发布CC BY 4.0 协议基于英国三次官方人口普查英格兰威尔士 2021、苏格兰 2022、北爱尔兰 2021的概率图模型生成全部为合成数据不涉及任何真实个人。核心数字指标数值记录数1,000,000 条角色数6,000,000 个6 类 persona 文本字段数23 个含 uuid覆盖范围英国 4 个国家、12 个大区、372 个地方政府存储7 个 Parquet 分片共约 1.5 GB每个记录长这样23 个字段的完整定义见 README.md 的 Schema 章节文本类professional_persona、sports_persona、persona、cultural_background、hobbies_and_interests等人口类sex、age、marital_status、household_type、education_level地理与职业类occupationSOC 2020 职业组、industry、municipality、region、country本文重点分析的就是人口类 4 个字段年龄、婚姻、家庭类型、教育。 第一步获取数据并安装 Pandas 环境先克隆仓库或直接从 Hugging Face 下载同名数据集git clone https://gitcode.com/hf_mirrors/nvidia/Nemotron-Personas-UK安装分析所需依赖pip install pandas pyarrow matplotlib数据文件以 Parquet 格式存放在data/目录下共 7 个分片train-00000-of-00007.parquet 至 train-00006-of-00007.parquet。 提示Parquet 是列式存储格式pandas.read_parquet可以直接读取无需pyarrow以外的额外配置速度比 CSV 快数倍。如果只想快速验证代码也可以先读取一个分片试试水import pandas as pd df pd.read_parquet(data/train-00000-of-00007.parquet) print(df.shape) # (约20万, 23) 第二步Pandas 加载 100 万行数据一次性加载全部 7 个分片并用 3 行代码完成「筛选字段 类型检查 基础画像」import pandas as pd df pd.concat( [pd.read_parquet(fdata/train-{i:05d}-of-00007.parquet) for i in range(7)], ignore_indexTrue ) # 只保留本次分析需要的字段省内存 cols [sex, age, marital_status, household_type, education_level, occupation] df df[cols] print(df[age].describe()) # 官方统计中位数 4818 成人85 占约 3.0%df[age].describe()会输出均值、标准差、分位数等统计量——对照 README.md 中的官方数字中位数 48 岁、女性占 51.7%可以快速验证数据是否符合真实分布。 年龄分布value_counts 直方图核心关键词操作groupbyvalue_counts。按 5 岁分箱统计各年龄段人数import matplotlib.pyplot as plt df[age_bin] (df[age] // 5 * 5).astype(str) - \ ((df[age] // 5 1) * 5).astype(str) age_dist df[age_bin].value_counts().sort_index() age_dist.plot(kindbar, figsize(10, 4), titleAge Distribution (Nemotron-Personas-UK), xlabelAge Band, ylabelCount) plt.tight_layout() plt.savefig(age_dist.png, dpi120)数据集的年龄分布镜像了英国真实人口结构25–64 岁每十年段均匀分布在 16%–17%18–24 岁占 10.6%65–74 岁占 12.6%85 岁以上仅 3.0%。 婚姻状态 × 年龄段crosstab 交叉热力图婚姻状态在不同年龄段的差异非常直观——35–44 岁已婚比例最高53.6%85 岁以上则以丧偶为主59.3%。用crosstab一步生成交叉表bins [18, 25, 35, 45, 55, 65, 75, 85, 120] labels [18-24, 25-34, 35-44, 45-54, 55-64, 65-74, 75-84, 85] df[age_group] pd.cut(df[age], binsbins, labelslabels) marital pd.crosstab(df[age_group], df[marital_status], normalizeindex) # normalizeindex每行按 100% 归一化得到占比 marital.plot(kindbar, figsize(10, 5), titleMarital Status by Age Group) plt.savefig(marital_heatmap.png, dpi120)pd.crosstab(index, columns, normalizeindex)是「分群占比」分析的万能组合换成normalizecolumns即可按列归一化。 家庭类型 × 年龄段家庭结构如何随年龄变化家庭类型字段共 13 个类别合租、夫妻带子女、空巢家庭、养老院等。同样用交叉表方法household pd.crosstab(df[age_group], df[household_type], normalizeindex) household.plot(kindbar, figsize(10, 5), titleHousehold Type by Age Group) plt.savefig(household_heatmap.png, dpi120)几个值得注意的规律18–34 岁多为合租或父母同住35–44 岁「已婚且有未成年子女」比例最高40.9%65 岁后退休家庭占主导85 岁以上一半独居50.2%。 教育水平 × 年龄段学历结构的代际差异教育水平共 6 个统一类别。年轻世代拥有学位的比例显著更高25–34 岁达 49.0%而 85 岁以上「无学历」比例升至 54.4%。edu pd.crosstab(df[age_group], df[education_level], normalizeindex) edu.plot(kindbar, figsize(10, 5), titleEducation Level by Age Group) plt.savefig(education_heatmap.png, dpi120) 进阶occupation × education 职业-教育交叉分析把职业组SOC 2020 major group和教育水平交叉起来能看到更细腻的结构87% 的 Professional 职业人群拥有学位而 Elementary 职业组中约 25% 无学历。working df[df[occupation] ! Does not apply].copy() # occupation 字段为 代码 职业名 格式取前 2 段即可归到 SOC major group working[occ_group] working[occupation].str.split().str[:2].str.join( ) occ_edu pd.crosstab(working[occ_group], working[education_level], normalizeindex) occ_edu.plot(kindbarh, figsize(12, 8), titleOccupation (SOC 2020) × Education Level) plt.savefig(occupation_education.png, dpi120) 彩蛋100 万条 professional_persona 的聚类人口字段背后是真正的「角色」——官方用 HDBSCAN 聚类 UMAP 降维发现professional_persona文本中存在大量清晰簇工程师、护士、律师、卡车司机……每个簇对应一类真实职业。这说明合成文本确实承载了人口结构信息。✅ 总结这套 Pandas 分析范式可以复用到任何人口数据集本文用到的 4 个核心操作构成了一套可复用的「人口画像分析模板」分析目标Pandas 操作图表类型单变量分布value_counts()groupby分箱柱状图/直方图二维交叉占比pd.crosstab(..., normalizeindex)热力图多维交叉先str.split提取维度再crosstab分组柱状图文本语义交给 embedding 聚类HDBSCAN/UMAP散点图Nemotron-Personas-UK 的独特价值在于完整可下载100 万条全量记录、23 个字段无采样、无删减真实分布对齐年龄、婚姻、家庭、教育、职业均与英国官方统计一致可直接用于评估 AI 模型的地域文化理解合成即安全CC BY 4.0 协议免费商用不涉及任何真实个人数据文件都在 data/ 目录下共 7 个 Parquet 分片字段定义详见 README.md 的 Schema 章节。现在就可以打开 Jupyter跑起第一段read_parquet了 赞分享数据集【免费下载链接】Nemotron-Personas-UK项目地址https://ai.gitcode.com/hf_mirrors/nvidia/Nemotron-Personas-UK点击查看免费下载相关推荐31.5% vs 7.9%Nemotron-Personas-Vietnam 城乡教育差距完整数据分析31.5% vs 7.9%Nemotron Personas Vietnam 城乡教育差距完整数据分析 如果你正在寻找一个真实反映越南人口结构的开源数据集数据集人工智能大模型Bindu 实战用 Agno OpenRouter 构建 CSV 数据分析 Agentpandas 画像 自动可视化Bindu 实战用 Agno OpenRouter 构建 CSV 数据分析 Agentpandas 画像 自动可视化 导读 本文基于仓库中的 AI人工智能AI Agent认证鉴权后端RPC框架Python-100-Days 数据分析实战pandas 数据透视与可视化深入浅出 pandas-4 精讲Python 100 Days 数据分析实战pandas 数据透视与可视化深入浅出 pandas 4 精讲 数据准备与清洗只是数据分析的前半程真正产生业文档教程教育创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑