机器学习必备之Numpy——数组和矢量计算

首先开始机器学习的入门学习,简单上手以后就可以开始数据分析的板砖工程了。先是要学习些Python的基础工具包,pandas,numpy,matplotlib等,主要在jupyter notebook交互式编译器进行编程训练。

Numpy是Python科学计算的一个基础包,许多内容都基于Numpy以及构建与其上的库。除了为Python提供了快速的数组处理能力,Numpy还在数据分析方面有另外一个作用,就是作为在算法之间传递数据的容器(Numpy使用低级语言C、Forturn等编写的,可以直接操作Numpy数组中的数据),无需进行任何的复制操作。

ndarray——多维数组对象
数组、Numpy数组、ndarray等都指ndarray对象

该对象是一个快速而灵活的数据集容器,运用这个对象可以对整块数据进行些数学运算。

ndarray是一个通用的同构数据多维容器,意思就是说,其中的所有元素都必须是相同类型的。shape(表示各维度大小的元组),dtype(用于说明数组数据类型的对象)。

创建见到的ndarray的办法就是array函数,他接受一切序列型的对象(可以数组中包括数组),然后产生一个新的含有传入数据的Numpy数组,如:

[In] data = [5,6,7.8]
[In] arr = np.array(data)
[In] arr
[Out] array([5.,6.,7.8])

数组嵌套数组的情况和以上的情况相似,只不过是成为多维数组。

如果不是显示说明数据类型,np.array会自动为新建的数组推断出一个合适的数据类型,比如说上面的:

[In] arr.dtype
[Out] dtype('float64')

这就是Python编程高级的一个体现。

还有些函数也可以新建数组,比如zeros和ones分别可以创建指定长度或形状的全为0或全为1的数组;empty可以创建一个没有任何具体值的数组(注意,np.empty不会返回全是0的数组,大多数情况下他返回的都是一些未进行初始化的垃圾值),要使用这些函数,仅仅需要传入一个表示形状和大小的元组即可。

arange是Python中内置随机函数range的数组版本:

[In] np.arange(8)
[Out] array([0, 1, 2, 3, 4, 5, 6, 7])

在这里插入图片描述
上面给出了一些常用的创建数组的函数,可以多加以训练。

ndarray的数据类型
dtype是一个特殊的对象,他含有ndarray将数组解释成特定数据类型所需的类型:

[In] arr1 = np.array([1,2,3], dtype = np.float64)
[In] arr1.dype
[Out] dtype('float64')

你也可以选择通过ndarray中的astype方法来显式的转换其dtype:

[In] arr2 = np.arr
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值