python中pandas进行数据分析与可视化(2)

1.创建数据源

python中pandas进行数据分析与可视化(1)里,数据源是手动创建,数据量也只有几条,这在实际工作中其实是不太常见的,所以这次我们选择生成一组随机数,作为数据源

# 导入所有需要的库
import pandas as pd
from numpy import random
import matplotlib.pyplot as plt

# 婴儿名字的初始值
names = ['Bob','Jessica','Mary','John','Mel']
random.seed(500)
random_names = [names[random.randint(low=0,high=len(names))] for i in range(1000)]
# 显示前10个名字
print(random_names[:10])

这时就能看到已经生成了1000条婴儿名称
在这里插入图片描述
再给这个1000个名词生成随机的数值,表示每个名字出现了多少次,重复的名字则表示由不同的地方获取

births = [random.randint(low=0,high=1000) for i in range(1000)]
print(births[:10])

在这里插入图片描述
之后可以用zip函数将这两个列表合并在一起,获取一个更容易理解的列表

BabyDataSet = list(zip(random_names,births))
print(BabyDataSet[:10])

在这里插入图片描述

2.数据源表格化

因为在数据分析的时候,往往会使用表格的形式进行处理,所以我们需要先把数据源转换成表格的形式,这里会用到DataFrame对象,我们可以把这个对象理解为包含了BabyDataset的内容而格式非常象一个 sql 表格或者 Excel 的数据表

df = pd.DataFrame(data = BabyDataSet, columns=['Names', 'Births'])
print(df)

在这里插入图片描述

3.数据分析-分组求和

现在的数据源是每个名称都有多条记录,那就可以考虑将其汇总,看看每个名称总共有多少次数

# 对name求和计数
name = df.groupby('Names')
print(name.sum())

在这里插入图片描述

4.数据可视化

在对名称分组求和之后,可以通过数据可视化的方式进行展示

name.sum()['Births'].plot.bar()
df.sort_values(by='Births', ascending=False)
plt.show()

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孟意昶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值