Pandas07

Pandas01
Pandas02
Pandas03
Pandas04
Pandas05
Pandas06

文章目录

    • 1 用户偏好分析 TGI
      • 1.1 TGI介绍
      • 1.2 TGI案例代码
    • 2 用户评论文本分析
      • 2.1 用户评论文本分析简介

1 用户偏好分析 TGI

1.1 TGI介绍

TGI(Target Group Index,目标群体指数)用于反映目标群体在特定研究范围内强势或者弱势的程度。

我们可以结合TGI公式来理解:

TGI = 目标群体中具有某一特征的群体所占比例/总体中具有相同特征的群体所占比例 × 100

当前案例要解决的问题, 找到合适的5个城市做新产品的首发城市, 产品的特点高利润, 高品质, 低性价比

计算步骤:

① 高客单价 定义 什么算是高客单价

② TGI 高客单价 城市

计算每个城市高客单价用户的占比

计算总体的高客单价用户占比

③ 计算出 每个城市, 高客单价占比的TGI

④ TGI进行排名, 选出排名前5

需要注意的问题: 考虑到数据量(市场规模)

1.2 TGI案例代码

加载数据

import pandas as pd
df=pd.read_excel('C:/Develop/深圳42/data/PreferenceAnalysis.xlsx')
df.head()
#%%
df.info()
#%%
df.describe()
#%%
df['用户ID'].value_counts()

通过查看数据, 发现有的用户消费了多笔, 需要计算平均消费金额,来判断用户是否是高客单价习惯的用户

计算每个人的平均消费金额

users_df = df.groupby('用户ID', as_index=False)['实付金额'].mean()
users_df.columns = ['用户ID','平均支付金额']
#%%
# 根据平均消费金额给用户贴上标签(高客单价, 低客单价)
users_df['客单价类别'] = users_df['平均支付金额'].apply(lambda x:'高客单价' if x>50 else '低客单价')
users_df['客单价类别'].value_counts()
#%%
users_df
#%%
# 把计算好的数据, 跟城市的数据拼接到一起
df_dup = df.drop_duplicates(subset=['用户ID','省份','城市'])
df_dup
#%%
from pandas import DataFramedf_merge:DataFrame = users_df.merge(df_dup,on='用户ID',how='left')[['用户ID','平均支付金额','客单价类别','省份','城市']]

统计每个城市高客单价, 低客单价的人数

# 透视表 margins参数 会做汇总, 把每一行的数据加到一起放在最右边(多一列), 每一列数据加到一起放到最下面(多一行)
result_df = df_merge.pivot_table(index = ['省份','城市'],columns = '客单价类别',values='用户ID',aggfunc='count',margins=True).reset_index()

计算每个城市高客单价的占比, 计算整体的高客单价占比 计算TGI

result_df['高客单价占比'] = result_df['高客单价']/result_df['All']
#%%
result_df.fillna(0,inplace=True)
#%%
result_df.iloc[result_df.shape[0]-1,result_df.shape[1]-1]
#%%
result_df['总高客单价占比'] = result_df.iloc[result_df.shape[0]-1,result_df.shape[1]-1]
#%%
result_df['TGI'] = result_df['高客单价占比']/result_df['总高客单价占比'] * 100
#%%
result_df.sort_values(by='TGI',ascending=False)

根据TGI排序, 找到TGI比较高的城市, 这里需要过滤掉数据量太少的城市

result_df[result_df['All']>result_df['All'].mean()].sort_values(by='TGI',ascending=False)

2 用户评论文本分析

2.1 用户评论文本分析简介

  • 评论数量随时间波动的情况

  • 评论的内容分析

    • 词频统计 → 绘制词云图
  • 词频统计

    • 英文词频统计 分词(把一句话拆成一个一个单词, 是比较容易的) 难点 词形还原

      • drive driven begin→began
      • nltk
      • 使用nltk做英文文本处理 ①分词 → ②词形还原 → ③ 去停用词(nltk库有现成的停用词表) → ④ 词频统计 → ⑤ 词云图展示
    • 中文词频统计 分词是中文文本处理比较关键的环节

      • jieba ①jieba分词 ②去停用词 → ③ 词频统计 → ④词云图
    • 无论是中文词频统计还是英文的词频统计都要做的步骤 去停用词

      • 对句子的意思影响不大的 连词, 介词, 代词之类的
        • 英文 of the
        • 中文 的 地 得

若有错误与不足请指出,关注DPT一起进步吧!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/65386.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

读书笔记-《乡下人的悲歌》

前段时间看了一些 J.D. Vance 的采访视频,几乎都是记者带着刁难的问题先手进攻,而 Vance 面带微笑,提及对方的名字,条理清晰地从对方的攻击中切回主题形成后手反制,实在让人看得过瘾。 更不可思议的是,Van…

Datawhale-AI冬令营二期

目录 一、番茄时钟(1)输入Prompt(2)创建 HTML 文件解析1:HTML结构解析2:计时器内容解析3:按钮区域解析4:脚本引用 (3)使用JavaScript实现时钟功能解析1&#…

【Sentinel】流控效果与热点参数限流

目录 1.流控效果 1.1.warm up 2.2.排队等待 1.3.总结 2.热点参数限流 2.1.全局参数限流 2.2.热点参数限流 2.3.案例 1.流控效果 在流控的高级选项中,还有一个流控效果选项: 流控效果是指请求达到流控阈值时应该采取的措施,包括三种&…

我的Qt作品(20)使用Qt+OpenCV写一个旋转/抠图/mask生成工具

使用QtOpenCV写一个旋转/抠图/mask生成工具 1、旋转功能 void FormRotate::rotateImage(const cv::Mat &src, cv::Mat &dst, double degree) //旋转 {if (fabs(degree) < 0.001){dst src;return;}//center旋转的中心点坐标//degree旋转的角度,不是弧度,>0逆时针…

win11中win加方向键失效的原因

1、可能是你把win键锁了&#xff1a; 解决办法&#xff1a;先按Fn键&#xff0c;再按win键 2、可能是可能是 贴靠窗口设置 中将贴靠窗口关闭了&#xff0c;只需要将其打开就好了

MetaRename for Mac,适用于 Mac 的文件批量重命名工具

在处理大量文件时&#xff0c;为每个文件手动重命名既耗时又容易出错。对于摄影师、设计师、开发人员等需要频繁处理和整理文件的专业人士来说&#xff0c;找到一款能够简化这一过程的工具是至关重要的。MetaRename for Mac 就是这样一款旨在提高工作效率的应用程序&#xff0c…

JavaScript甘特图 dhtmlx-gantt

背景 需求是在后台中&#xff0c;需要用甘特图去展示管理任务相关视图&#xff0c;并且不用依赖vue&#xff0c;兼容JavaScript原生开发。最终使用dhtmlx-gantt&#xff0c;一个半开源的库&#xff0c;基础功能免费&#xff0c;更多功能付费。 甘特图需求如图&#xff1a; 调…

VSCode下载安装指南

VSCode下载 通过网盘分享的文件&#xff1a;VSCodeUserSetup-x64-1.96.2.exe 链接: https://pan.baidu.com/s/1l7fdxeALnyeuUe1a5l0aqQ?pwdb8y3 提取码: b8y3 –来自百度网盘超级会员v6的分享 VSCode安装 1、下载好之后双击下图 2、我同意&#xff0c;下一步 3、可以点浏…

【黑马头条】day20—xxl-job

目录 1 今日内容 1.1 需求分析 1.2 实现思路 1.3 定时计算 1.4 定时任务框架-xxljob 1.5 学习目录 2.分布式任务调度 2.1 什么是分布式任务调度 2.2 xxl-Job简介 2.3 XXL-Job-环境搭建 2.4 配置部署调度中心-docker安装 2.5 xxl-job入门案例编写 2.6 任务详解-执行…

人工智能基础软件-Jupyter Notebook

简介&#xff1a; Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算&#xff1a;开发、文档编写、运行代码和展示结果。 Jupyter Notebook是以网页的形式打开&#xff0c;可以在网页页面中直接编写代码和运行代码&#xff0c;代码的运行结果也会直…

Unity功能模块一对话系统(4)实现个性文本标签

本期我们将了解如何在TMPro中自定义我们的标签样式&#xff0c;并实现两种有趣的效果。 一.需求描述 1.定义<float>格式的标签&#xff0c;实现标签处延迟打印功能 2.定义<r" "></r>格式的标签&#xff0c;实现标签区间内文本片段的注释显示功能…

微信流量主挑战:三天25用户!功能未完善?(新纪元4)

&#x1f389;【小程序上线第三天&#xff01;突破25用户大关&#xff01;】&#x1f389; 嘿&#xff0c;大家好&#xff01;今天是我们小程序上线的第三天&#xff0c;我们的用户量已经突破了25个&#xff01;昨天还是16个&#xff0c;今天一觉醒来竟然有25个&#xff01;这涨…

玩原神学编程-原神时钟

前言 最近喜欢玩原神这种开放世界探索的游戏&#xff08;还有黑神话、古墓丽影等&#xff09;&#xff0c;只能说纳塔版本的boss盾真的厚&#xff0c;萌新的我去打boss&#xff0c;从白天打到黑夜&#xff0c;黑夜再打到白天&#xff08;游戏里面的时间&#xff09;。 闲话结…

机器学习之PCA降维

主成分分析&#xff08;PCA&#xff0c;Principal Component Analysis&#xff09; 主成分分析&#xff08;PCA&#xff09;是一种常见的无监督学习技术&#xff0c;广泛应用于数据降维、数据可视化以及特征提取等任务。PCA的目标是通过线性变换将数据从高维空间映射到低维空间…

Mysql进阶SQL优化

SQL优化在开发场景中必不可少的技能之一&#xff0c;它能最大限度的提升SQL查询性能&#xff0c;如果随意使用也会出现不可预料的结局。 1、为什么要优化SQL 我们先说说不优化SQL造成什么现象。常见问题是响应时间长&#xff0c;用户体验感低。数据库频繁争抢锁&#xff0c;浪…

修改成清华镜像源解决Anaconda报The channel is not accessible源通道不可用问题

修改成清华镜像源解决Anaconda报The channel is not accessible源通道不可用问题 最近在通过pycharm开发python程序&#xff0c;引用anaconda环境建立虚拟环境时报错&#xff0c;报UnavailableInvalidChannel: The channel is not accessible or is invalid.应该是镜像源访问通…

Selenium+Java(21):Jenkins发送邮件报错Not sent to the following valid addresses解决方案

问题现象 小月妹妹近期在做RobotFrameWork自动化测试,并且使用Jenkins发送测试邮件的时候,发现报错Not sent to the following valid addresses,明明各个配置项看起来都没有问题,但是一到邮件发送环节,就是发送不出去,而且还不提示太多有用的信息,急的妹妹脸都红了,于…

Redis6为什么引入了多线程?

大家好&#xff0c;我是锋哥。今天分享关于【Redis6为什么引入了多线程&#xff1f;】面试题。希望对大家有帮助&#xff1b; Redis6为什么引入了多线程&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 6 引入了多线程的主要目的是提高性能&#…

【模块一】kubernetes容器编排进阶实战之kubernetes 资源限制

kubernetes 资源限制 kubernetes中资源限制概括 1.如果运行的容器没有定义资源(memory、CPU)等限制&#xff0c;但是在namespace定义了LimitRange限制&#xff0c;那么该容器会继承LimitRange中的 默认限制。 2.如果namespace没有定义LimitRange限制&#xff0c;那么该容器可…

Rancher V2.9.0 Docker安装教程

1、创建Rancher挂载目录 mkdir -p /home/rancher/k3s/agent/images/ 2、复制容器中的镜像tar包&#xff0c;防止挂载之后镜像包丢失导致创建集群报错 避免&#xff1a;Internal error occurred: failed calling webhook "default.cluster.cluster.x-k8s.io" dock…