【和小安一起学习·数据分析】(一)NumPy到底怎么用

01、前言

各位小伙伴们大家好,这里是 【和小安一起学习数据分析】 系列栏目的第一期 numpy到底怎么用,接下来的一个月中,我会陆续更新python有关数据分析的几个库NumPy、pandas、SciPy、matplotlib的学习心得,希望能对大家有所帮助,如有不妥之处,也请大家不吝赐教。

数据分析
numpy
SciPy
pandas
matplotlib
我对几个库关系的粗浅理解

02、NumPy是什么/有什么用?

在学习具体的函数使用、数组创建、索引等知识前,私以为,我们应该先了解,NumPy到底是什么,我在什么时候会用到它,为什么要用它,为什么不用python自带的数组等等问题。接下来,让我们一一来解答这些问题。

1、NumPy到底是什么?

按照官方的说法,NumPy是使用Python进行科学计算的基础软件包。它包括:

  • 功能强大的N维数组对象(ndarray)
  • 精密广播功能函数
  • 集成 C/C+和Fortran 代码的工具
  • 强大的线性代数、傅立叶变换和随机数功能

按照我的理解,NumPy其实是一个典型的数据结构型的库,和C++中的< set >、< vector >等类似,都是以一个数据结构(NumPy中的ndarry)为核心,然后集成了一系列这个数据结构相关的属性、方法,我们学习这个库,其实就是在学习这个数据结构的属性和方法。

2、NumPy真的很好用?

在计算机界,一个库、一个轮子的火热,很大程度上都应该是因为这个轮子很好用,NumPy的火热也是如此。通常来说,好用都是比出来的,我们先来比较一下NumPy数组(ndarray)和python数组(Array)之间的区别。

  • NumPy 数组在创建时具有固定的大小,与Python的原生数组对象(可以动态增长)不同,更改ndarray的大小将创建一个新数组并删除原来的数组
  • NumPy 数组中的元素都需要具有相同的数据类型,因此在内存中的大小相同
  • NumPy 数组有助于对大量数据进行高级数学和其他类型的操作。通常,这些操作的执行效率更高,比使用Python原生数组的代码更少
  • 越来越多的基于Python的科学和数学软件包使用NumPy数组; 虽然这些工具通常都支持Python的原生数组作为参数,但它们在处理之前会还是会将输入的数组转换为NumPy的数组,而且也通常输出为NumPy数组。换句话说,为了高效地使用当今科学/数学基于Python的工具(大部分的科学计算工具),你只知道如何使用Python的原生数组类型是不够的 ,还需要知道如何使用 NumPy 数组

说白了,就NumPy数组比python数组,更快,更方便,功能更多,同时NumPy本身还与python的其他科学和数学库有联系,所以学习NumPy是数据分析的重要基础。

3、NumPy有些什么用?

前面说了这么多,大家可能还是不知道NumPy到底可以干什么,这里给大家一个简单的总结,一句话,和矩阵有关的它都能干。像什么,深度学习、数据分析、矩阵运算等等,都需要用到NumPy。

03、ndarray的创建和基本属性

前面说了一堆废话,我们还是抓紧时间来进入正题。正如前文所述,NumPy的核心就是ndarray这个数组,所以我们先来讲怎么创建ndarray数组
NumPy创建
上述就是常用的一些创建方法,然后我们来看看一个正常的ndarray有哪些属性
NumPy属性
我们其实可以在创建ndarray时就指定一些属性。
在这里插入图片描述

04、总结

本期文章围绕ndarray介绍了NumPy的基本使用,希望能就自己的理解与大家讨论,本人也是初学,如有过失之处,还望大家予以指点。

NumPy
ndarray
创建
属性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值