Numpy库入门

从一个数据到一组数据

维度:一组数据的组织形式

一维数据:由对等关系的有序或无序数据构成,采用线性方式组织。

可用类型:对应列表、数组和集合

不同点:

列表:数据类型可以不同

数组:数据类型相同

二维数据:由多个一维数据构成,是一维数据的组合形式。

表格是典型的二维数据

多维数据:由一维或二维数据在新维度上扩展形成。

高维数据:仅利用最基本的二元关系展示数据间的复杂结构。

键值对将数据组织起来的形式

一维数据:列表和集合类型

二维数据:列表类型

多维数据:列表类型

高维数据:字典类型或数据表示格式(JSON\XML\YAML)


Numpy科学计算基础库

*一个强大的N维数组对象 ndarray

*广播功能函数

*整合C/C++/Fortran代码的工具

*线性代数、傅里叶变换、随机数生成等功能

Numpy是Scipy、Pandas等数据处理或科学计算库的基础。

import numpy as np

尽管别名可以省略或更改,建议使用上述约定的别名

Python已有列表类型,为什么需要一个数组对象(类型)?

-数组对象可以去掉元素间运算所需的循环,使一维向量更像单个数据

-设置专门的数组对象,经过优化,可以提升这类应用的运算速度

观察:科学计算中,一个维度所有数据的类型往往相同

-数组对象采用相同的数据类型,有助于节省运算和存储空间

ndarray是一个多维数组对象,由两部分构成:

-实际的数据

-描述这些数据的元数据(数据维度,数据类型等)

np.array() 输出成[ ]形式,元素由空格分隔

轴(axis):保存数据的维度;秩(rank):轴的数量

ndarray对象的属性

ndarray数组的元素类型

ndarray的元素类型(1)

实部(.real)+ j虚部(.imag)

非同质的ndarray对象

ndarray数组的创建

-从Python中的列表、元组等类型创建ndarray数组

-使用NumPy中函数创建ndarray数组,如:arange,ones,zeros等

-从字节流(raw bytes)中创建ndarray数组

-从文件中读取特定格式,创建ndarray数组

ndarray数组的创建方法

(1)从Python中的列表、元组等类型创建ndarray数组

x = np.array(list/tuple)

x = np.array(list/tuple, dtype=np.float32)

当np.array()不指定dtype时,NumPy将根据数据情况关联一个dtype类型

(1)从Python中的列表、元组等类型创建ndarray数组

(2)使用NumPy中函数创建ndarray数组,如:arange,ones,zeros等

(3)使用NumPy中其他函数创建ndarray数组

ndarray数组的变换

对于创建后的ndarray数组,可以对其进行维度变换和元素类型变换

a = np.ones((2,3,4), dtype = np.int32)

ndarray数组的维度变换

ndarray数组的类型变换

new_a = a.astype(new_type)

astype()方法一定会创建新的数组(原始数据的一个拷贝),即使两个类型一致

ndarray数组向列表的转换

ls = a.tolist()

ndarray数组的操作

数组的索引和切片

索引:获取数组中特定位置元素的过程

切片:获取数组元素子集的过程

数组的索引和切片

一维数组的索引和切片:与Python的列表类似

多维数组的索引:

数组的索引和切片

多维数组的切片:

数组与标量之间的运算作用于数组的每一个元素

实例

NumPy一元函数

对ndarray中的数据执行元素级运算的函数

Numpy二元函数

本文为博主学习笔记,转载需注明来源;

学习视频所属:中国大学MOOC 北京理工大学 嵩天老师https://www.icourse163.org/course/BIT-1001870002

Python数据分析与展示(1)-数据分析之表示(1)-NumPy库入门的更多相关文章

  1. 数据分析与展示——NumPy库入门

    这是我学习北京理工大学嵩天老师的<Python数据分析与展示>课程的笔记.嵩老师的课程重点突出.层次分明,在这里特别感谢嵩老师的精彩讲解. NumPy库入门 数据的维度 维度是一组数据的组 ...

  2. 数据分析之Numpy库入门

    1.列表与数组 在python的基础语言部分,我们并没有介绍数组类型,但是像C.Java等语言都是有数组类型的,那python中的列表和数组有何区别呢? 一维数据:都表示一组数据的有序结构 区别: 列 ...

  3. Python数据分析与展示(1)-数据分析之表示(2)-NumPy数据存取与函数

    NumPy数据存取与函数 数据的CSV文件存取 CSV文件 CSV(Comma-Separated Value,逗号分隔值) CSV是一种常见的文件格式,用来存储批量数据. 将数据写入CSV文件 np ...

  4. Python——NumPy库入门

    1.数据的纬度 维度:一组数据的组织形式 1.1 一维数据 一维数据由对等关系的有序或无序数据构成,采用线性方式组织 ,对应列表.数组和集合等概念 列表:数据类型可以不同 ,如 3.1413, 'pi ...

  5. 【学习笔记】PYTHON数据分析与展示(北理工 嵩天)

    0 数据分析之前奏 课程主要内容:常用IDE:本课程主要使用:Anaconda Anaconda:一个集合,包括conda.某版本Python.一批第三方库等 -支持近800个第三方库 -适合科学计算 ...

  6. Python数据分析与展示第0&1周学习笔记(北理工 嵩天)

    一前奏 1..Python语言开发工具选择 IDLE:自带默认常用入门级 PyCharm:简单.集成度高 Anaconda:awesome IDE较为简单,不做详细记录. 二.表示 1.numpy库入 ...

  7. python数据分析及展示(一)

    一.IDE选择 Anaconda软件:开源免费,https://www.anaconda.com下载,根据系统进行安装.由于下载速度慢,可以去清华大学开源软件镜像站下载. Spyder软件设置:Too ...

  8. python数据分析及展示(三)

    一.Pandas库入门 1. Pandas库的介绍 http://pandas.pydata.org Pandas是Python第三方库,提供高性能易用数据类型和分析工具 import pandas ...

  9. 小猪的Python学习之旅 —— 16.再尝Python数据分析:采集拉勾网数据分析Android就业行情...

    一句话概括本文: 爬取拉钩Android职位相关数据,利用numpy,pandas和matplotlib对招人公司 情况和招聘要求进行数据分析. 引言: 在写完上一篇<浅尝Python数据分析: ...

随机推荐

  1. libpcap 中调用ctime()时警告提示:

    warning: format ‘%s’ expects argument of type ‘char *’, but argument 2 has type ‘int’ [-Wformat=]    ...

  2. js数值型遇0开始自动转换为8进制

    如题,今天在项目更新时发现了js的这个自动转换问题,代码如下: var num = 0110; render:function(num){       var html="<a hre ...

  3. Linux 下安装配置 JDK7(转载)

    转自:http://dawndiy.com/archives/155/ 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributo ...

  4. 【转】20道Spring Boot面试题

    面试了少量人,简历上都说自己熟习 Spring Boot, 或者者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望. 下面,我给大家总 ...

  5. mycat登录报错Host 'XXX' is blocked because of many connection errors的另一种解决思路

    报错时机 使用了mycat,而不是单纯使用了mysql. 报错信息 ERROR 1129 (HY000): Host '1.23.22.18' is blocked because of many c ...

  6. NET 编程题

    1.C#编写创建一个线程的代码 using System; using System.IO; using System.Threading ; class MyThread{ public int c ...

  7. 无法收集统计信息,怎样优化SQL。

    特殊情况如下 客户的统计信息是固定的,没办法收集统计信息 . SQL profile 是最后考虑方案,因为同样写法sql 比较多,几十条. Parallle 并行客户一般不考虑接受,OLTP 系统. ...

  8. java 配置信息类 Properties 的简单使用

    Properties :(配置信息类) 是一个表示持久性的集合 ,继承 Hashtable ,存值是以键-值得方式  主要用于生产配置文件和读取配置文件信息. 简单的实例: import java.i ...

  9. 这样的设计是否有违背MVC设计原则??

    MVC 皆知为 Model-View-Controller 请求模型-〉Client发现请求-〉Controller接收+处理-〉返回Model给前端-〉前端接收处理模型Result 但是最近发现一个 ...

  10. Python学习日记之记录

    列表 list=['1','2'] 元组 zoo=('1','2''3') 字典 d = {key1 : value1, key2 : value2 }