美文网首页Python、MATLAB工科联盟
Python NumPy学习笔记之数据处理

Python NumPy学习笔记之数据处理

作者: 仇念尧 | 来源:发表于2019-07-27 19:58 被阅读7次

    废话不多说,直接开干。

    1. NumPy文件读写方法

    1.1 保存文件

    1.1.1 保存一个数组

    # 二进制数据存储
    # 保存一个数组
    a = np.arange(10).reshape(2, 5)
    b = np.arange(6).reshape(3, 2)
    np.save("E://data analysis by python//a", a)
    

    1.1.2 保存多个数组

    # 保存多个数组
    np.savez("E://data analysis by python//a_b", a, b)
    print(a, '\n', b)
    

    1.1.3 保存数组至文本文件中

    # 保存数组至文本文件中
    # fmt="%f"表示保存为浮点型,delimiter=","表示数据间分隔符为","
    np.savetxt("E:/data analysis by python/a.txt", a, fmt="%f", delimiter=",")
    

    1.2 读取文件

    1.2.1 读取单个文件

    # 二进制文件读取
    # 读取单个文件
    c = np.load("E://data analysis by python//a.npy")
    

    1.2.2 读取多个文件

    # 读取多个文件
    d = np.load("E://data analysis by python//a_b.npz")
    print(c, '\n', d['arr_0'], '\n', d['arr_1'])
    

    1.2.3 读取文本文件

    # 读取文本文件
    a = np.loadtxt("E:/data analysis by python/a.txt", delimiter=",")
    b = np.genfromtxt("E:/data analysis by python/a.txt", delimiter=",")
    print(a, b)
    

    2. 数据排序

    2.1 sort函数排序

    其中,请注意:

    1. seed为随机数种子,随机数种子固定,随机数不变;
    2. 请注意d,e,f返回值为None,因为sort排序是直接对数组操作;
    3. sort排序后,a,b,c不可逆,变成排序后的数组,d,e,f为中间变量。
    # 数据排序
    # seed为随机数种子,随机数种子固定,随机数不变
    a = np.random.seed(10)
    b = np.random.randint(1, 10, size=10)
    c = np.random.randint(1, 10, size=(3, 3))
    print(a, b, c)
    # 直接排序
    d = b.sort()
    # 沿着横轴对每一行进行排序
    e = c.sort(axis=1)
    # 沿着纵轴对每一列进行排序
    f = c.sort(axis=0)
    print(a, b, c)
    print(d, e, f)
    

    2.2 argsort函数排序

    # argsort函数排序,返回重新排序值下标
    g = b.argsort()
    

    3. # 数据去重与重复

    3.1 数据去重

    # 数据去重,b、c能达到相同结果
    a = np.array(['赵', '钱', '孙', '李', '周', '赵', '钱'])
    b = np.unique(a)
    c = set(a)
    print(a, b, c)
    

    3.2 数组重复

    # 重复数组两次
    a = np.arange(5)
    b = np.tile(a, 2)
    # 重复数组元素两次
    a = np.array([[1, 2, 3], [2, 1, 3], [1, 4, 3]])
    # 按行进行元素重复
    b = a.repeat(2, axis=0)
    # 按列进行元素重复
    c = a.repeat(2, axis=1)
    print(a, b, c)
    

    4. 常用函数

    4.1 求和函数

    a = np.array([[1, 2, 3], [2, 1, 3], [1, 4, 3]])
    # 数组元素求和
    b = np.sum(a)
    # 沿横轴求和
    c = a.sum(axis=1)
    # 沿纵轴求和
    d = a.sum(axis=0)
    # 求元素累计和
    m = np.cumsum(a)
    # 求元素累计积
    n = np.cumprod(a)
    

    4.2 求均值函数

    # 数组元素求均值
    e = np.mean(a)
    # 沿横轴求均值
    f = a.mean(axis=1)
    # 沿纵轴求均值
    g = a.mean(axis=0)
    

    4.3 求标准差、方差函数

    # 求数组标准差
    h = np.std(a)
    # 求数组方差
    i = np.var(a)
    

    4.4 求最大、最小值函数

    # 求数组最大值
    j = np.max(a)
    # 求数组最小值
    k = np.min(a)
    print(a,b,c,d,'\n')
    print(e,f,g,'\n',h,j,k,m,n)
    

    相关文章

      网友评论

        本文标题:Python NumPy学习笔记之数据处理

        本文链接:https://www.haomeiwen.com/subject/frtyrctx.html