1 创建数组

(1) array(boject, dtype=None, copy=True, order=None, subok=False, ndmin=0)

a = array([1, 2, 3, 4])

b = array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

a.dtype    --> dtype('int32')

a.shape    --> (4,)

b.shape    -->(3, 4)

a.shape=2, -1  #(-1时自动计算,相当于2, 6)

c = a.reshape((2,2))  #c和a公用一个空间

(2) arange([start,] stop [,step], dtype=None) 

a = arange(5)    -->array([0, 1, 2, 3, 4])

a[2:4]    -->array([2,3])

a[:-1]    -->array([0, 1, 2, 3])  #下标为负数,表示从后往前数

a[2:4] = 20, 30    -->array([0, 1, 20, 30, 4])  #可以通过下标修改元素

x = arange(5, 0, -1)    -->array([5, 4, 3, 2, 1])

x[array([True, False, True, False])]

-->array([5, 3])   #只获取布尔数组中True所在的下标 0 2 长度不够算False

x[array([True, False, False, True, False])) = -5, -2  #用布尔数组修改True所在下标的元素

x    -->array([-5, 4, 3, -2, 1])

(3) linspace(start, stop, num=50, endpoint=True, retstep=False) #等差数列的一维数组

logspane(start, stop, num=50, endpoint=True, base=10)         #等比数列的一维数组

(4) frombuffer

  fromfile

  fromstring(string, dtype=float, count=-1, sep=' ')

fromstring('abcdefgh', int8)

-->array([ 97, 98, 99, 100, 101, 102, 103, 104], dtype=int8)  #一个字符占1个字节(Byte)=8位(bit),

fromstring('abcdefgh', in16)

-->array([25185, 25699, 26213, 26727], dtype=int16)  #25185=98*256 + 97

(5) fromfunction(funtion, shape, **kwargs)


def func(i, j):

  return (i+1) * (j+1)

a = fromfunction(func, (9, 9))    -->  生成一个99乘法口诀二维数组 a[i, j] = func(i, j)

上面等价于 arange(1,10).reashape(-1,1) * arange(1,10)

Python科学计算学习一 NumPy 快速处理数据的更多相关文章

  1. Python科学计算:用NumPy快速处理数据

    创建数组 import numpy as np a=np.array([1,2,3]) b=np.array([[1,2,3],[4,5,6],[7,8,9]]) b[1,1]=10 print(a. ...

  2. windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等

    安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...

  3. Python科学计算基础包-Numpy

    一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...

  4. python科学计算库的numpy基础知识,完美抽象多维数组(原创)

    #导入科学计算库 #起别名避免重名 import numpy as np #小技巧:从外往内看==从左往右看 从内往外看==从右往左看 #打印版本号 print(np.version.version) ...

  5. Python科学计算学习之高级数组(二)

    代码性能和向量化 背景:Python是一种解释型的编程语言,基本的python代码不需要任何中间编译过程来得到机器代码,而是直接执行.而对于C.C++等编译性语言就需要在执行代码前将其编译为机器指令. ...

  6. Python科学计算库灬numpy

    Numpy NumPy是一个功能强大的Python库,主要用于对多维数组执行计算.Numpy许多底层函数实际上是用C编写的,因此它的矩阵向量计算速度是原生Python中无法比拟的. numpy属性 维 ...

  7. Python科学计算库

    Python科学计算库 一.numpy库和matplotlib库的学习 (1)numpy库介绍:科学计算包,支持N维数组运算.处理大型矩阵.成熟的广播函数库.矢量运算.线性代数.傅里叶变换.随机数生成 ...

  8. Python科学计算—numpy模块总结(1)

    作为一个本科学数学专业,目前研究非线性物理领域的研究僧.用什么软件进行纯科学计算好,Fortran永远是第一位的:matlab虽然很强大,可以很容易的处理大量的大矩阵,但是求解我们的模型(有时可能是几 ...

  9. Python科学计算库Numpy

    Python科学计算库Numpy NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库. 1.简 ...

随机推荐

  1. SharePoint 网站登录不上,3次输入用户名/密码白页、

    来源于:http://www.cnblogs.com/jianyus/p/3249091.html 新搭建的SharePoint 2013环境,第一次干的这么憋屈的慌,先是接了一个Ghost的服务器, ...

  2. log4j.properties文件的配置

    Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松 ...

  3. dd if=/dev/zero of=的含义是什么?Linux 下的dd命令使用详解

    http://blog.sina.com.cn/s/blog_8b5bb24f01016y3o.html 一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指 ...

  4. Html的Table与Echart的饼图实现联动效果

    功能描述: 单击Table中的某个单元格,Echart的饼图加载相关的数据,鼠标悬停在Echarts饼图中的某一块中,Table显示与Echarts饼图相关的数据. 例:楼宇经济概要显示每一个季度所有 ...

  5. APP生产流程图片解说

    尽我所能总结下一个app的生产过程,未必完整,也未必是所有的app产生的一个过程,不同公司会有很大的不同,我只是想总结下一般的大众的,做个参考. 需求策划: 设计: 开发: 测试: 发布没什么可画的了 ...

  6. over 分析函数之 lag() lead()

    /*语法*/ lag(exp_str,offset,defval) over()  取前 Lead(exp_str,offset,defval) over()  取后 --exp_str要取的列 -- ...

  7. HttpClient的get和post方式提交数据的使用

    /** * Http工具类 */ public class HttpUtil { // 创建HttpClient对象 public static HttpClient httpClient = new ...

  8. 第二十六节,Python内置函数

    Python3.0内置函数 abs() 取数字的绝对值,也就是无论是正数还是负数取它的绝对值格式:abs(目标变量)返回:数字类型 #!/usr/bin/env python # -*- coding ...

  9. mysql 数据表

    CREATE DATABASE IF NOT EXISTS  `shop`;USE `shop`; drop table if exists lidepeng; create table lidepe ...

  10. Codeforces Round #364 (Div. 2) E. Connecting Universities

    E. Connecting Universities time limit per test 3 seconds memory limit per test 256 megabytes input s ...