Python数据分析之Numpy

本文详细介绍了Python数据分析库Numpy,特别是ndarray对象的创建、属性和基本操作。内容包括从列表转换、arange、linspace等创建方法,数组的属性如ndarray.T,以及如何在Jupyter Notebook中高效使用快捷键。

Numpy

numeric python 数字化的python

ndarray
—- 具有六个参数,它们分别是:
shape: 数组的形状;
dtype: 数据类型;
buffer: 对象暴露缓存区接口;
offset: 数组数据的偏移量;
strides: 数据步长
order:{'C','F'},以行或列为主排列顺序
一、在numpy中,我们主要通过以下5种途径创建数组:
1.从Python数组结构列表,元组等转换;
2.使用np.arange,np.ones,np.zeros等numpy原生方法;
3.从存储空间读取数组;
4.通过使用字符串或缓冲区从原始字节创建数组;
5.使用特殊函数,如random
1.从列表或元组转换
使用numpy.array将列表或元组转换为ndarray数组:
    numpy.array(object,dtype=None,copy=True,order=None,subok=False,ndmin=0)
    参数:
    1)object: 列表、元组等
    2)dtype: 数据类型。默认对象所需的最小类型
    3)copy: 布尔类型,默认为True,表示复制对象
    # 例:
        import numpy as np

        l=list('123456')
        nd2 = np.array(l)
        print(nd2)
        # ['1' '2' '3' '4' '5' '6']
        type(nd2)
        # numpy.ndarray
2.1 arange方法创建
arange()的功能是在给定区间内创建一系列均匀间隔的值:
    numpy.arange(start,stop,step,dtype=None)
    设置值所在区间,这里为 '[start,stop)',这是一个半开半闭区间,step为步长用于设置值之间的间隔,dtype为设置值类型
# 例:
    import numpy as np

    nd3 = np.arange(0,150,step=5,dtype=np.float32)
    display(nd3.shape,nd3.dtype)
    # (30,)
    # dtype('float32')

    nd3
    # array([  0.,   5.,  10.,  15.,  20.,  25.,  30.,  35.,  40.,  45.,  50.,
        55.,  60.,  65.,  70.,  75.,  80.,  85.,  90.,  95., 100., 105.,
       110., 115., 120., 125., 130., 135., 140., 145.], dtype=float32) 
       # 将数组的值到过来
       np.arange(10,0,step=-1)
       # array([10,  9,  8,  7,  6,  5,  4,  3,  2,  1])
2.2 linspace 方法创建
linspace 用于在指定区间内返回间隔均匀的值:
    numpy.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)
    1)start: 序列的起始值
    2)stop: 序列的结束值
    3)num: 生成的样本数,默认为50
    4)endpoint: 布尔值,默认为真,表示最后一个样本包含在序列内
    5)retstep: 布尔值,如果为真,返回间距,默认为False
    6)dtype: 数组的类型
# 例:
    import numpy as np

    nd4 = np.linspace(0,15,num=16)
    nd4
    # array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10., 11., 12.,
       13., 14., 15.])

    nd4.shape
    # (16,)

    # 不使用dtype属性该表默认的数据类型,就用形如以下的方式:
        numpyd.astype(np.float32)
    nd4.astype(np.int)
    # array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15])
2.3 ones方法创建
ones用于快速创建数值全部为1的多维数组:
    numpy.ones(shape,dtype=None,order='C')
1)shape: 用于指定数组形状
2)dtype: 数据类型
3)order:{'C','F'},按行或列的方式存储数组
# 例:
    nd5 = np.ones(shape=(2,2,3)
    # array([[[1., 1., 1.],
            [1., 1., 1.]],
            [[1., 1., 1.],
            [1., 1., 1.]]])

    nd5.type
    # dtype('float64')
2.4 zeros 方法创建
zeros和ones方法非常类似,不同在于,这里全部填充的0:
    numpy.zeros(shape,dtype=None,order='C')
1)shape: 用于指定数组形状
2)dtype: 数据类型
3)order:{'C','F'},按行或列的方式存储数组
# 例:
    nd6 = np.zeros(shape=(2,2,3)
    # array([[[0., 0., 0.],
            [0., 0., 0.]],
            [[0., 0., 0.],
            [0., 0., 0.]]])

    nd6.type
    # dtype('float64')
2.5 full方法创建
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值