机器学习之pandas库①——代码应用

分析

利用pandas进行excel、txt、csv等文件的读取,利用方法对数据进行增删改查、分组、替换、等操作来清洗数据

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sn

# 正常显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
# 正常显示负数
plt.rcParams['axes.unicode_minus'] = False

# 划分季度
data = pd.read_excel(r'../datas/ftx.xlsx')
print(data)

def fn(n):
    if n>0 and n<4:
        return 's1'
    if n>3 and n<7:
        return 's2'
    if n>6 and n<10:
        return 's3'
    else:
        return 's4'

data['季度'] = data['月'].map(fn)

# 1.使用所学知识,使用EXCEL数据透视表功能,
# 从数据源中筛选出2010年第3季度北京和上海两个城市的销售数量总和,将结果输出到新表。
a = data[(data['销售区域'].isin(['北京','上海'])&(data['年']==2010)&(data['季度']=='s3'))][['销售区域','销售数量']].groupby(['销售区域']).sum()
print(a)
a.to_csv('1.csv')


# 2.利用python环境下的数据分析包pandas编程实现筛选出2010年第3季度北京和广州两个城市的销售数量总和,将结果输出到新表。
b = data[(data['销售区域'].isin(['北京','广州'])&(data['年']==2010)&(data['季度']=='s3'))][['销售区域','销售数量']].groupby(['销售区域']).sum()
print(b)
b.to_csv('2.csv')

# 3.利用python环境下的数据分析包pandas编程
# 实现求出2009年和2010年的四个季度(第一季度、第二季度、第三季度和第四季度)共8个时间节点,
data['季度1'] = data['年'].astype(str) + data['季度']
data1 = data[['季度1','销售数量']].groupby(['季度1']).sum()
print(data1)

# 求出各节
# 点对应销售数量总和,并用柱状图可视化展现。
sn.barplot(data1.index,data1['销售数量'])
# plt.show()

print(data)
# (1)加载房天下数据集,提取时间为2009年的数据,使用分组函数,计算上海和沈阳的地区的销售平均值
a1 = data[(data['销售区域'].isin(['上海','沈阳'])&(data['年']==2009))][['销售区域','销售数量']].groupby(['销售区域']).mean()
print(a1)

# (2)提取时间为2009年的数据,使用分组函数,计算上海和沈阳的地区的销售最大值
a2 = data[(data['销售区域'].isin(['上海','沈阳'])&(data['年']==2009))][['销售区域','销售数量']].groupby(['销售区域']).max()
print(a2)

# (3)计算沈阳地区2009年每季度的销售总和
a3 = data[(data['销售区域'].isin(['沈阳'])&(data['年']==2009))][['季度','销售数量']].groupby(['季度']).sum()
print(a3)

# (4)计算沈阳地区2009年每季度的销售均值
a4 = data[(data['销售区域'].isin(['沈阳'])&(data['年']==2009))][['季度','销售数量']].groupby(['季度']).mean()
print(a4)

效果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分数据集


	年		月	销售区域	销售数量
0	2009	1	广州	70
1	2009	1	南宁	25
2	2009	1	北京	17
3	2009	1	广州	99
4	2009	1	北京	43
5	2009	1	广州	57
6	2009	1	上海	47
7	2009	1	南宁	73
8	2009	1	广州	32
9	2009	1	北京	77
10	2009	1	广州	41
11	2009	1	上海	12
12	2009	1	北京	18
13	2009	1	杭州	13
14	2009	1	杭州	87
15	2009	1	南昌	17
16	2009	1	广州	76
17	2009	1	杭州	45
18	2009	1	沈阳	81
19	2009	1	上海	40
20	2009	1	杭州	15
21	2009	1	北京	45
22	2009	1	沈阳	23
23	2009	1	广州	30
24	2009	1	杭州	39
25	2009	1	广州	12
26	2009	1	成都	74
27	2009	1	上海	79
28	2009	1	沈阳	66
29	2009	1	广州	12
...	...	...	...	...
120	2009	1	杭州	91
121	2009	1	南宁	10
122	2009	1	广州	69
123	2009	1	广州	95
124	2009	1	成都	23
125	2009	1	广州	53
126	2009	1	沈阳	74
127	2009	1	杭州	66
128	2009	1	沈阳	88
129	2009	1	上海	79
130	2009	1	北京	58
131	2009	1	广州	67
132	2009	1	杭州	15
133	2009	1	南宁	66
134	2009	1	沈阳	69
135	2009	1	成都	91
136	2009	1	成都	43
137	2009	1	成都	72
138	2009	1	沈阳	31
139	2009	1	杭州	41
140	2009	1	杭州	81
141	2009	1	杭州	55
142	2009	1	杭州	48
143	2009	1	广州	40
144	2009	1	成都	63
145	2009	1	成都	47
146	2009	2	南昌	40
147	2009	2	杭州	59
148	2009	2	杭州	27
149	2009	2	南昌	91
150 rows × 4 columns
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值