设U设a,b∈R,P={1,a}2,3,4,5,6},A设a,b∈R,P={1,a}4},B设a,b∈R,P={1,a}2,5},C={2,4},求下列集合:

  • Numpy的核心数据结构,就叫做array就是数组,array对象可以是一维数组,也可以是多维数组;
  • Python的List也可以实现相同的功能,但是array比List的优点在于性能好、包含数组元数据信息、大量的便捷函数;
  • Numpy的array和Python的List的一个区别,是它元素必须都是同一种数据类型,比如都是数字int类型,这也是Numpy高性能的一个原因;
  • ndim:一个数字,表示array的维度的数目
  • size:一个数字,表示array中所有数据元素的数目
  • 生成随机数的np.random模块构建

1.2array本身支持的大量操作和函数

  • 直接逐元素的加减乘除等算数操作
  • 更好用的面向多维的数组索引
  • 线性代数函数,比如求解逆矩阵、求解方程组

2.1基础索引(切片)

行列用都逗号分隔,:表示从哪到n-1的位置

# 筛选所有行,然后筛选多列

。。。。。。。。。。。。。。。。。。。。。。。。。。。。

 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

二维数组  就是有行有列了,用逗号分割

# 筛选多行,列可以省略,逗号是位置

# 实例:把一维数组进行01化处理
# 比如把房价数字,变成“高房价”为1,“低房价”为0

# 因此返回的是(行,列)一维结果

 。。。。。。。。。。。。。。。。。。。。。。。。

怎样把第3列大于5的行筛选出来

 。。。。。。。。。。。。。。。。。。。。。。。。。。。。

返回数据在[0, 1)之间,具有均匀分布

若连续型随机变量具有概率密度

则称X在区间(a,b)上服从均匀分布.记为X~U(a,b)

在区间(a,b)上服从均匀分布的随机变量 X,落在区间(a,b)中任意等长度的子区间内的可能性是相同的.

或者它落在(a,b)的子区间内的概率只依赖于子区间的长度而与子区间的位置无关.

事实上,对于任一长度l的子区间(c,c+l),a≤c<c+l≤b,

f(x)及F(x)的图形

返回数据具有标准正态分布(均值0,方差1)

a = 0并且b = 1,所得分布U(0,1)称为标准均匀分布。

(2)联系:正态分布可以通过标准化处理,转化为标准正态分布。具体方法是使用z=(X-μ)/σ将原始数据转化为。

正态分布(Normal distribution)又名高斯分布(Gaussiandistribution),若随机变量X服从一个数学期望为μ、方差为σ2的高斯分布,记为N(μ,σ2)。其概率密度函数为正态分布的期望值μ决定了其位置,其标准差σ决定了分布的幅度。我们通常所说的标准正态分布是μ = 0,σ = 1的正态分布。当μ=0,σ=1时,正态分布就成为标准正态分布N(0,1)。概率密度函数为:

正态分布的密度函数的特点是:关于μ对称,并在μ处取最大值,在正(负)无穷远处取值为0,在μ±σ处有拐点,形状呈现中间高两边低,图像是一条位于x轴上方的钟形曲线。

生成随机整数,包含low,不包含high
如果high不指定,则从[0, low)中生成数字

a是一维数组,从它里面生成随机结果

把一个数组x进行随机排列

# 如果数组是多维的,则只会在第一维度打散数据

把一个数组x进行随机排列,或者数字的全排列

# 注意,这里不会更改原来的arr,会返回一个新的copy

按照平均值loc和方差scale生成高斯分布的数字

在[low, high)之间生成均匀分布的数字

 .。。。。。。。。。。。。。。。

 。。。。。。。。。。。。。。。。

。。。。。。。。。。。。。

机器学习将数据进行标准化

arr如果对应到现实世界的一种解释:

  • 行:每行对应一个样本数据
  • 列:每列代表样本的一个特征
  • 对于机器学习、神经网络来说,不同列的量纲应该相同,训练收敛的更快;
  • 比如商品的价格是0到100元、销量是1万到10万个,这俩数字没有可比性,因此需要先都做标准化;
  • 不同列代表不同的特征,因此需要axis=0做计算

很多数据计算都是二维或三维的,对于一维的数据输入为了形状匹配,经常需升维变成二维

经常需要在纸上手绘数组的形状,来查看不同数组是否形状匹配,是否需要升维降维

  • np.newaxis:关键字,使用索引的语法给数组添加维度

给一维向量添加一个行维度

数据现在是一行*五列,数据本身没有增减,只是多了一级括号

给一维向量添加一个列维度

背景:在给机器学习准备数据的过程中,经常需要进行不同来源的数据合并的操作。

  1. 给已有的数据添加多行,比如增添一些样本数据进去;
  2. 给已有的数据添加多列,比如增添一些特征进去;

以下操作均可以实现数组合并:

在机器学习中,因为如下原因,使用K折交叉验证能更好评估模型效果:

  1. 样本量不充足,划分了训练集和测试集后,训练数据更少;
  2. 训练集和测试集的不同划分,可能会导致不同的模型性能结果;

K折验证(K-fold validtion)将数据划分为大小相同的K个分区
对每个分区i,在剩余的K-1个分区上训练模型,然后在分区i上评估模型。
最终分数等于K个分数的平均值,使用平均值来消除训练集和测试集的划分影响;

用样本的角度解释下data数组:

  • 这是一个二维矩阵,行代表每个样本,列代表每个特征
  • 这里有9个样本,每个样本有4个特征

这是scikit-learn模型训练输入的标准格式

# 我们想进行4折交叉验证

Numpy给数组排序的三个方法:

  • numpy.sort:返回排序后数组的拷贝
  • array.sort:原地排序数组而不是返回拷贝
  • numpy.argsort:间接排序,返回的是排序后的数字索引

3个方法都支持一个参数kind,可以是以下一个值:

kind默认值是quicksort,快速排序平均情况是最快,保持默认即可

简单理解为用于不同大小数组的二元通用函数(加、减、乘等)的一组规则

  1. 如果两个数组的维度数dim不相同,那么小维度数组的形状将会在左边补1
  2. 如果shape的维度不匹配,但是有维度是1,那么可以扩展维度是1的维度匹配另一个数组;
  3. 如果shape的维度不匹配,但是没有任何一个维度是1,则匹配失败引发错误;
  1. 根据规则2,b.shape再变成(2, 3),相当于在行上复制

扩展的是维度是1的(3, 2)变不成(3,3)

SVD 全称:Singular Value Decomposition。SVD 是一种提取信息的强大工具,它提供了一种非常便捷的矩阵分解方式,能够发现数据中十分有意思的潜在模式。

  • 矩阵形式数据(主要是图像数据)的压缩。
  • 分别计算MMH和MHM的特征向量及其特征值;
  • MMH的特征向量组成U;而MHM的特征向量组成 V;
  • 对MMH和MHM的非零特征值求平方根,对应上述特征向量的位置,填入Σ的对角元。

对于一堆数据点(x, y),能否只根据这些数据,找出一个函数,使得函数画出来的曲线和原始数据曲线尽量匹配?

任何可微连续的函数,都可以用一个N次多项式来估计,而比N次幂更高阶的部分为无穷小可以忽略不计

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

13.1. 加载波斯顿房价数据集

# 加载数据集,存入特征矩阵data、预测结果向量target

#每个二维的数据集对应着一个一维的标签集,用于标识每个样本的所属类别或属性值。通常数据集用大写字母X表示,标签集用小写字母y表示。

13.2. 拆分训练集和测试集

13.3. 训练线性回归模型

13.4. 评估模型和使用模型

}
  • 第一个字符必须是字母表中字母或下划线 _ 。

  • 标识符的其他的部分由字母、数字和下划线组成。

  • 保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:

python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。

缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句,例如:

在 [], {}, 或 () 中的多行语句,不需要使用反斜杠(\),例如:

python中数字有四种类型:整数、布尔型、浮点数和复数。

  • +加 - 两个对象相加a + b 输出结果 31-减 - 得到负数或是一个数减去另一个数a - b 输出结果 -11*乘 - 两个数相乘或是返回一个被重复若干次的字符串a * b 输出结果 210/除 - x 除以 yb / a 输出结果 2.1%取模 - 返回除法的余数b % a 输出结果 1**幂 - 返回x的y次幂a**b 为10的21次方//取整除 - 向下取接近商的整数

    in如果在指定的序列中找到值返回 True,否则返回 False。x 在 y 序列中 , 如果 x 在 y 序列中返回 True。not in如果在指定的序列中没有找到值返回 True,否则返回 False。x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

     我们可以在命令提示符中输入"Python"命令来启动Python解释器:

    执行以上命令后,出现如下窗口信息:

    在 python 提示符中输入以下语句,然后按回车键查看运行效果:

    以上命令执行结果如下:

}

我要回帖

更多关于 设随机变量X~U(0,1) 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信