分析
利用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