吴恩达深度学习教程作业1.3——出现的函数汇总

学习python时,遇到库中不会的函数可以访问该库的官网,如numpy的官网http://www.numpy.org/

1.load_planar_dataset()

(1)np.random.seed():使得随机数据可预测。可以使得多次生成的随机数相同。(注:numpy.random()具体用法见下面。)

例如:

import numpy as np
np.random.seed(1)
x1=np.random.rand(4)
print(x1)
np.random.seed(1)
x2=np.random.rand(4)
print(x2)

输出结果为:

而如果:

import numpy as np

x1=np.random.rand(4)
print(x1)

x2=np.random.rand(4)
print(x2)

输出结果为:

(2)np.zeros(shape,dtype=float,order='C')

功能:返回给定形状和类型的用0填充的新数组

参数:shape:数组的形状

          dtype:数据类型,是一个可选参数。默认为numpy.float64.如有需要可以设置为例numpy.int8.

         order:是否在内存中以C或Fortran连续顺序存储多维数据。是一个可选参数。C代表与C语言类似,行优先;F代表列优先。

(3)for in range(m,n)——python中的这个用法相当于C语言中的for(i=m i<n i++)

import numpy as np
for i in range(2,5):
    print(i)

输出结果为:

import numpy as np
for i in range(5):
    print(i)

输出结果为:

(3)numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

      在执行的时间间隔内返回均匀间隔的数字。

      返回num均匀分布的样本,在[start, stop]。

      间隔的终点可以选择性的排除。

Parameters:   

      start:标量,序列的起始点。

      stop:标量。序列的结束值,除非endpoint被设置为False。 在这种情况下,序列由除 num + 1个均匀间隔样本中的最后一个 以外的所有样本组成(这句话太绕了,看个下面的例子就明白啦),因此stop点被剔除。 请注意,当端点为False时,步长会改变。

      num:生成的样本数。int。默认为50。

      endpoint:bool型变量,可选参数。如果设置为True,则得到序列包含stop值,如为False则反之。

      retstep:如果设置为True,则返回值为(samples,step),step是样本之间的间距。

      dtype:输出数组的类型。如果没有给出,则从其他输入参数推断。

Returns:   (samples,step)   只有restep为True的时候才会返回step。

import numpy as np
array1=np.linspace(1,10,10)
array2=np.linspace(1,10,10,endpoint= False)
array3=np.linspace(1,10,10,endpoint=False,retstep=True )
print(array1,'\n' ,array2,'\n',array3)

运行结果为:

(4)numpy.c_

功能:将切片对象沿第二个轴(列)转换为连接,请看例子。

import numpy as np
x1=np.c_[np.array([1,2,3]), np.array([4,5,6])]
x2=np.c_[np.array([[1,2,3]]), 0, 0, np.array([[4,5,6]])]
print(x1,'\n',x2)

运行结果为:

(5)plt.scatter()的原型函数是

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None, hold=None, data=None, **kwargs)

例子:plt.scatter(X[0, :], X[1, :], c=np.squeeze(Y), s=40, cmap=plt.cm.Spectral)

Parameters:

      x,y:数组,输入数据。

      s:size,点的大小。

      c:color。可以是颜色字符串,如'b' , 'y' , 'r'等,也可以是数组。这个例子中,c=Y就是一个数组。如果是数组,就用后面的cmap参数,cmap参数颜色映射,当使用cmap=plt.cm.Spectral时,会自动的根据类别,比如这个例子里是一个二元分类问题,那么这个函数会给label 1一种颜色,label 0设置另一种颜色。

      maker:点的形状,默认是'o'。

      cmap:仅当c是一个浮点数组时才使用cmap。 如果为None,则默认为rc image.cmap。

(6)np.squeeze() 

      功能:除去size为1的维度。

举例说明:

import numpy as np
x1 = np.array([[0],[1],[2]])
x2 = np.array([[[0],[1],[2]]])
print(x1,'\n' ,x2)
print(x1.shape,x2.shape)

运行结果:

继续:

x11=np.squeeze(x1)
x22=np.squeeze(x2)
print(x11,'\n' ,x22)
print(x11.shape,x22.shape)

运行结果:


(7)sklearn.linear_model.LogisticRegressionCV()

功能:使用scikit_learn中的逻辑回归分类器。(通过计算真实值与预测值的概率,求损失函数最小值来计算模型参数,从而得出模型。)这里的参数均设置成了默认值。

        clf.fit(X.T, Y.T)

功能:用训练数据拟合分类器模型。

       clf.predict():用训练好的分类器去预测标签。

(8)np.dot()

功能:对于秩为1的数组,执行对应位置相乘,然后再相加;对于秩不为1的二维数组,执行矩阵乘法运算;超过二维的可以参考numpy库介绍。

(9)X.shape()

功能:用于确定各个维度的维数。

举例:

如,对于二维数组:

import numpy as np
x = np.array([[1,2,3], [4,5,6]])
print(x.shape,'\n',x.shape[0],'\n',x.shape[1])

运行结果:

对于三维数组:

import numpy as np
x = np.array([[[1,2,3], [4,5,6]]])
print(x.shape,'\n',x.shape[0],'\n',x.shape[1],'\n',x.shape[2])

运行结果:

可见,若对于更高维的数组,随着shape[ ]的逐渐递增,其返回的结果依次为从最内维到最外维。

(10)assert ( )断言函数

功能:括号中加入语句,用于判断语句是否为真,若为假,则会引发AssertionError。作用是语气让程序在晚些时候崩溃,不如在错误条件发生的时候直接崩溃,提高效率。

(11)isinstance()

功能:用于判断对象是否为一个已知的类型。

例如:isinstance(2,int),输出结果为True。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值