python编程练习题目

github上面的一个项目,分为level1,level2,level3 三个等级的难度。

题目地址

一部分中文翻译

python教程

剑指offer,python3实现

python进阶

练习题1:

随机生成一列数据,画出这些数据的分布、概率密度曲线,以及进行归一化、标准化之后的分布、概率密度曲线。

解答:

# 归一化、标准化、中心化
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

original_data = np.random.exponential(size = 1000)
scaled_data = (original_data - original_data.min())/(original_data.max()-original_data.min())
fig,ax = plt.subplots(1,2)
sns.distplot(original_data,ax=ax[0])    #直方图
ax[0].set_title("Original Data")
sns.distplot(scaled_data,ax = ax[1])
ax[1].set_title('Scaled Data')
plt.show()

original_data = 6*np.random.rand(1000)+7
scaled_data = (original_data - original_data.mean())/original_data.std()
fig,ax = plt.subplots(1,2)
sns.distplot(original_data,ax=ax[0])
ax[0].set_title("Original Data")
sns.distplot(scaled_data,ax = ax[1])
ax[1].set_title('Scaled Data')
plt.show()

随机抽样函数

练习题2:

一个数据集 身高:1.7,1.8,1.9

                体重:70,80,90,分别进行归一化、标准化,看数据值及其分布图。

 

练习题3:

同题1,自动生成二维分布数据集,画图展示。进行归一化、标准化后,画图展示。

解答:

x = np.array([1.7,1.8,1.9,1.75,1.85])
y = np.array([60,70,80,85,65])
plt.scatter(x,y)
plt.show()

x_scaled = preprocessing.scale(x)
y_scaled = preprocessing.scale(y)
plt.scatter(x_scaled,y_scaled)
plt.show()

x_normalize = (x-x.min())/(x.max()-x.min())
y_normalize = (y-y.min())/(y.max()-y.min())
plt.scatter(x_normalize,y_normalize)
plt.show()

posted on 2019-12-04 15:52  静静的白桦林_andy  阅读(1189)  评论(0编辑  收藏  举报

导航