python数据分析练习——姓名分析US_Baby_names_right.csv
第一步:导入相关模块
import pandas as pd
from pandas import Series,DataFrame
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
第二步:加载dataset目录下US_Baby_names_right.csv文件数据并查看数据的基本信息
data = pd.read_csv('dataset/US_Baby_names_right.csv')
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1016395 entries, 0 to 1016394
Data columns (total 7 columns):# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 Unnamed: 0 1016395 non-null int64 1 Id 1016395 non-null int64 2 Name 1016395 non-null object3 Year 1016395 non-null int64 4 Gender 1016395 non-null object5 State 1016395 non-null object6 Count 1016395 non-null int64
dtypes: int64(4), object(3)
memory usage: 54.3+ MB
第三步:查看前十行数据
data.head(10)
Unnamed: 0 | Id | Name | Year | Gender | State | Count | |
---|---|---|---|---|---|---|---|
0 | 11349 | 11350 | Emma | 2004 | F | AK | 62 |
1 | 11350 | 11351 | Madison | 2004 | F | AK | 48 |
2 | 11351 | 11352 | Hannah | 2004 | F | AK | 46 |
3 | 11352 | 11353 | Grace | 2004 | F | AK | 44 |
4 | 11353 | 11354 | Emily | 2004 | F | AK | 41 |
5 | 11354 | 11355 | Abigail | 2004 | F | AK | 37 |
6 | 11355 | 11356 | Olivia | 2004 | F | AK | 33 |
7 | 11356 | 11357 | Isabella | 2004 | F | AK | 30 |
8 | 11357 | 11358 | Alyssa | 2004 | F | AK | 29 |
9 | 11358 | 11359 | Sophia | 2004 | F | AK | 28 |
数据注释:
- Name 名字
- Year 婴儿出生的名字
- Gender 婴儿性别
- State 婴儿出生的地区缩写
- Count 该名字被使用的次数
第三步:删除 Unname:0和Id这两列数据
del data['Unnamed: 0']
del data['Id']
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1016395 entries, 0 to 1016394
Data columns (total 5 columns):# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 Name 1016395 non-null object1 Year 1016395 non-null int64 2 Gender 1016395 non-null object3 State 1016395 non-null object4 Count 1016395 non-null int64
dtypes: int64(2), object(3)
memory usage: 38.8+ MB
第四步:统计数据集中男孩名字和女孩名字各是多少。
data['Gender'].value_counts()
F 558846
M 457549
Name: Gender, dtype: int64
第五步:按照Name字段将数据集进行分组并求和赋值给变量names,最后输出前五行
names = data.groupby('Name')['Year','Count'].sum()
names.head()
Year | Count | |
---|---|---|
Name | ||
Aaban | 4027 | 12 |
Aadan | 8039 | 23 |
Aadarsh | 2009 | 5 |
Aaden | 393963 | 3426 |
Aadhav | 2014 | 6 |
第六步:按照每个名字被使用的次数(Count)对第五步中结果进行降序排序,得出最受欢迎的的五个名字
names.sort_values(['Count'], ascending=False).head(5)
Year | Count | |
---|---|---|
Name | ||
Jacob | 1141099 | 242874 |
Emma | 1137085 | 214852 |
Michael | 1161152 | 214405 |
Ethan | 1139091 | 209277 |
Isabella | 1137090 | 204798 |
第七步:在数据集中,共出现了多少个名字?(不包含重复项)
data['Name'].nunique()
17632
第八步:根据names变量中的数据,删除掉Year列数据后,得出如下所示的基本统计参数
del names['Year']
names.describe()
Count | |
---|---|
count | 17632.000000 |
mean | 2008.932169 |
std | 11006.069468 |
min | 5.000000 |
25% | 11.000000 |
50% | 49.000000 |
75% | 337.000000 |
max | 242874.000000 |
python数据分析练习——姓名分析US_Baby_names_right.csv相关推荐
- Python数据分析初学之分析表格
文章目录 Python数据分析初学之分析表格 任务要求 代码实现 Python数据分析初学之分析表格 任务要求 1)使用 pandas 读取文件 data.csv 中的数据 ,创建 DataFrame ...
- 【详解】Python数据分析第三方库分析
Python数据分析第三方库分析 目录 Python数据分析第三方库分析 @常用库下载地址 1 Numpy 2 Matplotlib 3 Pandas 4 SciPy 5 Scikit-Learn 6 ...
- python数据分析的交叉分析和分组分析 -第三次笔记
python数据分析 -第三次笔记 –1.交叉分析 –2.分组分析 1.交叉分析 交叉分析的含义是在纵向分析法和横向分析法的基础上,从交叉.立体的角度出发,由浅入深.由低级到高级的一种分析方法.这种方 ...
- Python数据分析之探索性分析(多因子复合分析)
目录 一.假设检验: 二.交叉分析 1.分析属性与属性之间关系的方法 2.透视表 三.分组与钻取: 四.相关分析 1.相关系数分析 2.熵:条件熵:互信息(熵增益):增益率:基尼系数: 3.衡量离散数 ...
- Python数据分析——基金定投收益率分析,以及支付宝“慧定投”智能定投实现
文章目录 一.关于基金定投 数据来源 接口规范 常见指数基金/股票代码 二.分析目标 三.代码实现 1.定义获取数据.清洗数据的函数 2.定义定投策略函数 3.计算2019年对沪深300指数基金进行定 ...
- python数据分析之对比分析
对比分析 概念:两个互相联系的指标进行比较 类型:绝对数比较(相减) .相对数比较(相除) 其中相对数比较分析也包括:结构分析.比例分析.动态对比分析 1.绝对数比较 a.对比的指标在量级上不能差别过 ...
- python数据比例_#python# #数据分析# 性别比例分析
手头有一份性别比例的样本数据,清洗后只保留了性别信息,做了一个数据分析. 数据清洗和数据统计的代码就不贴了,贴性别比例pie图和性别比例趋势图的代码. 性别比例pie图: def _plot_gend ...
- Python数据分析之股票分析
股票分析 使用tushare包获取某股票的历史行情数据 输出该股票所有收盘比开盘上涨3%以上的日期 输出该股票所有开盘比前日收盘跌幅超过2%的日期 假如从2010年1月1日开始,每月第一个交易日买入1 ...
- Python数据分析项目:分析世界五百强企业数据
前言 嗨喽!大家好,这里是魔王~ 哪个国家的世界五百强企业数量最多? 今天带你用python来处理数据,并实现数据可视化,解决对现有数据产生的疑问. 本次代码是在 Jupyter Notebook 里 ...
最新文章
- 菜鸟级springmvc+spring+mybatis整合开发用户登录功能(下)
- [C++STL]deque容器用法介绍
- IPC 中 LPC、RPC 的区别和联系
- JSON为什么那样红(另有洞天)
- coco showanns不显示_coco奶茶加盟好不好?【5月官网最新公布】加盟费用+加盟流程...
- 10天智能锁项目实战第1天(了解单片机STM32F401RET6和C语言基础)
- java 通过TCP\UDP 协议实现多人聊天,点对点,文件传送-----分服务器端和客户端...
- android+字体稍微加粗,的Android设置的Roboto字体,加粗,斜体,普通,...(有点像自定义字体家族)...
- java信鸽推送_记录腾讯信鸽推送服务java
- win10系统 双击bat文件无法运行,只是以普通txt文件打开该文件,简单解决
- ADSL上网速度慢的原因及快速排除方法
- 驱动开发---cc1: error: code model kernel does not support PIC mode(改文件Unhelp?try it)
- 在ftp服务器中上传文档的权限,ftp服务器 上传文件权限设置
- U盘图标改变与文件隐藏
- HIT2020春软件构造lab1
- Ubuntu 16.04 桌面字体太小让它大大大
- vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in v-on handler (Promise/async): “Error: 失败“found in
- 微信红包业务,为什么采用轮询算法?
- Fuzzing论文_CONCURR COMP-PRACT E2020_Fw-fuzz
- 深度图像和彩色图像配准原理
热门文章
- Java图片上传功能
- python基础编程:selenium+python实现自动登陆QQ邮箱并发送邮件功能
- 最新域名查询-中文域名注册到期查询软件
- mysql 中的删除列_如何从MySQL中的表中删除列?
- SQL语句批量去除、替换掉某列(字段)中包含的某个字符串
- 厌倦了SE11/SE16N? 告诉你如何在Excel中查看SAP的表数据
- python的简单调试
- TortoiseGit工具使用
- 【无标题】小游戏用户界面登录验证
- ADK+MDT实现域控服务器全自动静默下发系统(七):MDT的部署--MDT Deployment Share 属性设置