• numpy


    a= np.array(a)
    a.shape
    a.dtype
    a.ndim
    np.zeros(10)
    np.zeros((3,6))
    np.empty((2,2,2))
    np.arange(10)

    改变数据类型
    a=np.array([1,2,3],dtype=np.float64)
    a=a.astype(np.float64)


    arr = np.array([[1,2,3],[4,5,6]])
    arr **2
    arr * 2
    arr +2
    1/arr

    切片
    a[5:8]=64
    数组的切片是原始数组的视图,修改切片会反映到原始数据上

    a[5:8].copy() 产生副本

    a=array([[1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]])

    a[1][1]
    a[1,1]


    a=array([[[ 1, 2, 3],
    [ 4, 5, 6]],

    [[ 7, 8, 9],
    [10, 11, 12]]])


    标量值和数组都能赋给a[0]


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

    b[:2][1:]
    b[1,:2] b[2,:1]

    布尔型索引

    names=np.array(['bob','joe','will','bob','will','joe','joe'])
    data=np.random.randn(7,4)

    names == 'bob'
    array([ True, False, False, True, False, False, False], dtype=bool)

    data[names=='bob'] 数组索引
    data[names=='bob',2:]
    data[names=='bob',3]
    data[names!='bob']
    data[-(names=='bob')]
    data[(names=='bob')|(names=='will')]

    data[data<0] = 0
    data[names != 'joe'] =7

    花式索引:
    arr=array([[ 0., 0., 0., 0.],
    [ 1., 1., 1., 1.],
    [ 2., 2., 2., 2.],
    [ 3., 3., 3., 3.],
    [ 4., 4., 4., 4.],
    [ 5., 5., 5., 5.],
    [ 6., 6., 6., 6.],
    [ 7., 7., 7., 7.]])

    arr[[4,3,0,6]]
    arr[[-3,-5,-7]]

    arr=np.arange(32).reshape((8,4))
    arr=array([[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11],
    [12, 13, 14, 15],
    [16, 17, 18, 19],
    [20, 21, 22, 23],
    [24, 25, 26, 27],
    [28, 29, 30, 31]])

    arr[[1,2,3,4],[1,2,3,0]]
    (1,1)(2,2)(3,3)(4,0)

    arr[[1,2,3,4]][:,[1,2,3,0]]
    arr[np.ix_([1,2,3,4],[1,2,3,0])]

    数组转置和轴对称

    arr=np.arange(15).reshape((3,5))
    arr.T

    内积
    np.dot(arr,arr.T)


    通用函数
    arr=np.arange(10)
    np.sqrt(arr)
    np.exp(arr)

    x,y=randn(8),randn(8)
    np.maximum(x,y)


    数组处理数据
    a=np.arange(-5,5,0.01)
    x,y=np.meshgrid(a,a)

    result = np.where(cond,x,y)
    result=[(x if c else y) for x,y,c zip(cond,xarr,yarr)]

    arr = np.random.randn(5,4) 正态分布数据
    arr.mean()
    np.mean(arr)

    arr.mean(axis=1) arr.mean(1)
    arr.sum()


    arr=randn(120)
    (arr>0).sum()


    bools=np.array([False,False,True,False])
    bools.any()
    bools.all()

    arr= randn(8)
    arr.sort() 由小到大

    arr=randn(5,3)
    arr.sort(1)

    唯一化:
    names = np.array([1,2,1,2,3])
    np.unique(names) 去重

    arr= np.array([1,2,3,4,5,6])
    np.in1d(arr,[1,2,3])

    array([True, True, True, False, False, False], dtype=bool)

    arr= np.arange(10)
    np.save('filename',arr) 保存为二进制文件
    np.load(‘filename’)

    np.savez('filrname',a=arr,b=arr)
    a b 作为键取数据

    np.loadtxt('filename',delimeter=',')
    np.savetxt('filename',arr,delimeter=':')


    随机数生成
    sample= np.random.normal(size=(4,4))

    pandas
    a= Series([1,2,-3,0])
    a.values
    a.index

    a= Series([1,2,-3,0],index=['a','b','c','d']) 自定义索引

  • 相关阅读:
    认识AppDomain类
    认识Math类
    控制输入法
    开发中常见错误
    flash视频窗口被关闭卡住了父窗口
    TransactionScope 事务 net2.0
    发现system.collection 命名空间下面的类大部分是基于数组来存储
    utf8 编码出现空白
    如何WEB上的消息提醒
    当前不会命中断点
  • 原文地址:https://www.cnblogs.com/cppb/p/5761837.html
Copyright © 2020-2023  润新知