专栏首页用户7466307的专栏日常答疑|Python实现分类频数统计

日常答疑|Python实现分类频数统计

提问:求每组数据中每个元素重复的个数,用什么函数?

咋一看,我觉得他问的我很懵B~于是,和他要了份数据,瞬间清楚了很多!

所以,需求就是求手机号前7位重复个数,安排!

安排

一、预览数据

df = pd.read_excel(r'C:/Users/Administrator/Desktop/新建 Microsoft Excel 工作表(3).xlsx')
print(df.head(),end = '\n\n')
df.info()

预览数据发现,数据格式不正确,需要先进行格式转换,以及防止隐私泄露,我们用一定的方法进行脱敏处理。

df = df.iloc[:,:3].astype(str)
print(df.head(),end = '\n\n')
df.info()
# 方法一
df['手机号'] = df['手机号'].str.split('.',expand = True)[0]
df['手机号'] = df['手机号'].apply(lambda x:x[:-3]+'***')
# 方法二
df['手机号前7位'] = df['手机号前7位'].str.replace('.0','')
df.tail()

二、删除无效值

idx = df[df['手机号']=='***'].index
df.drop(idx,inplace = True)
df.head()

接下来,进行统计手机号前7位重复个数。

n = df['手机号前7位'].value_counts()
df['手机号前7位重复个数'] = df['手机号前7位'].map(n)
df.tail()

当我满心欢喜地告诉他答案时候,他说不对啊!!!不同ID下,要分别统计,也就是说要看每一个ID下手机号前7位重复个数。于是,接着修改。

三、正确答案

# 化整为零
ID = df['ID'].unique()
result = []
for i in ID:
    df1 = df[df['ID']==i].copy()
    n = df1['手机号前7位'].value_counts()
    df1['手机号前7位重复个数'] = df1['手机号前7位'].map(n)
    result.append(df1)
r = pd.concat(result)
r.sample(10)

这一次,他没有再说什么!!嘻嘻嘻,为我的机智点赞~

不过,我觉得这个方法也许不是太好吧。但是,有没有更好的方法呢?

欢迎大家和我交流一下,感谢~

本文分享自微信公众号 - 软件测试test(gh_d29759b02f67),作者:严小样儿

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python数据分析实战之分布分析

    分布分析法,一般是根据分析目的,将数据进行分组,研究各组别分布规律的一种分析方法。数据分组方式有两种:等距或不等距分组。

    用户7466307
  • 小程序测试框架之minium入门

    用户7466307
  • 使用Java带你打造一款简单的外卖系统

    1. 设计一款应用程序-外卖系统,有文字和图片显示,通过选择一种或多种食物,每种食物可以选择一份或多份,点击结算后,进行总价的统计。

    用户7466307
  • 50道练习实践学习Pandas!

    原文地址:https://www.kesci.com/home/project/5ddc974ef41512002cec1dca

    Datawhale
  • 我就不用AI、ML模型预测股价,来点不一样的!

    你是否注意到MaxHigh,MaxLow和MaxClose列? 他们是关键! 我们将使用这些列计算概率。

    量化投资与机器学习微信公众号
  • 举一反三-Pandas实现Hive中的窗口函数

    1、Hive窗口函数 我们先来介绍一下Hive中几个常见的窗口函数,row_number(),lag()和lead()。 row_number() 该函数的格式...

    石晓文
  • 快速介绍Python数据分析库pandas的基础知识和代码示例

    “软件工程师阅读教科书作为参考时不会记住所有的东西,但是要知道如何快速查找重·要的知识点。”

    deephub
  • 【MathorCup】2020年 A题 无车承运人平台线路定价问题,特征间的相关性分析

    问题 1:通过定量分析的方法,研究影响无车承运人平台进行货运线路定价的主要因素有哪些,并说明理由。 问题 2:根据附件 1 数据,通过建立数学模型,对已经成交...

    不太灵光的程序员
  • Pandas进阶修炼120题,给你深度和广度的船新体验

    本文为你介绍Pandas基础、Pandas数据处理、金融数据处理等方面的一些习题。

    数据派THU
  • Day05| 第四期-电商数据分析

    疫情期间,想必我们会增加网上购物,人们的生活越来越数字化。当我们消费时,无论是线上和线下都会产生大量的交易数据,对于商家来说数字化的运营方式非常必要,从大量的交...

    DataScience

扫码关注云+社区

领取腾讯云代金券