Python 数据分析 : 实例 python的数据分析案例
1、构建矩阵
生成 4 x 4 形式的矩阵,矩阵中的数据是 1 ~ 10 之间的随机数
random_list = np.random.random(16)
random_list = np.round(random_list*10, 0)
random_list = random_list.reshape(4,4)
2、数据的排序
随机生成 10~100 之间的 90 个数字,并将这些数字按照升序进行排序
arr = np.random.random(90)*100
arr = np.round(arr,0)
arr.sort()
3、数据的基本计算
生成从 1 到 10 的整数,并分别计算它们的最大值,最小值,平均值
arr = []
for i in range(1,11):arr.append(i)
np.max(arr)
np.min(arr)
np.average(arr)
4、生成正弦&余弦图像
用程序生成正弦函数和余弦函数的图像,并将这两个函数的图像放置在同一个画布上展示。 要求:
- 1、横轴的范围是 0 ~ 4 PI
- 2、图像的标题是 Sin & Cos
- 3、图像中的图例为 Sin 和 Cos
- 4、横轴名称为 X value,纵轴名称为 Y value
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 4*np.pi)
plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))
plt.grid()
plt.legend([‘Sin’,‘Cos’])
plt.title(‘Sin & Cos’)
plt.xlabel(“X value”)
plt.ylabel(“Y value”)
5、统计分析 Titanic 数据
- 任务一:从 titanit.csv 文件中导入数据;该文件请从该链接【 https://greatfrank.oss-cn-chengdu.aliyuncs.com/temporay/titanic.csv 】进行下载
- 任务二:取出性别这一列的数据(1 表示男性,0 表示女性),并计算男性和女性的比率;
- 任务三:取出前 20 行数据中的序号和年龄信息;
- 任务四:绘制性别比率的饼图,绘制年龄的柱状图。将两张图放置在一个画布中,两张图的排列方式由考生自定义
all_users = np.genfromtxt(‘titanic.csv’, delimiter=“,”,skip_header=True)
sexs = all_users[ : , 5]
males = sexs[sexs == 1]
females = sexs[sexs == 0]
male_ratio = males.size / sexs.size
female_ratio = females.size / sexs.size
indexs = all_users[ : 21, 0]
ages = all_users[:21, 6]
pl = plt.figure(figsize = (8,6), dpi = 80)
ax1 = pl.add_subplot(2,1,1)
plt.pie([male_ratio,female_ratio],explode = (0,0), labels = [‘male’,‘female’])
plt.title(‘male & female’)
ax2 = pl.add_subplot(2,1,2)
plt.bar(indexs,ages)
plt.title(‘ages’)
plt.xlabel(‘indexs’)
plt.ylabel(‘age’)