展开菜单
首页 精品内容 本月促销 装机必备 Windows PDF教程 macOS软件 IOS软件 Android AI 专题
全部分类

当前位置:

首页 > 编程开发 > Python数学建模:Numpy和Pandas应用实例分析

Python数学建模:Numpy和Pandas应用实例分析

Numpy学习#Numpy的基本使用'''Numpy提供了两种基本的对象:ndarray存储单一数据类型的多维数组;ufunc是能够对数组进行处理的函数1-导入函数importnumpyasnp2-数组创建2-1array可将列表或元组转化为ndarray数组2-2arange在给定区间内创建等差数组,格式:arange(start=None,stop=None,step=None,dtype=None)【step表示步长间隔】2-3linspace在给定区间内创建间隔相等的数组,

本文目录

    Numpy 学习

    # Numpy的基本使用
    '''
    Numpy提供了两种基本的对象:ndarray存储单一数据类型的多维数组;
                           ufunc是能够对数组进行处理的函数
    1-导入函数
    import numpy as np
    2-数组创建
    2-1 array   可将列表或元组转化为ndarray数组
    2-2 arange 在给定区间内创建等差数组,格式:
                arange(start=None, stop=None, step=None,dtype=None)
                【step表示步长间隔】
    2-3 linspace 在给定区间内创建间隔相等的数组,格式:
                 linspace(start, stop, num=50, endpoint=True)
                 【间隔相等的num个数据,其num默认值是50】
    2-4 logspace 在给定区间内生成等比数组,格式:
                 logspace(start, stop, num=50, endpoint=True, base=10.0)
                 【默认生成区间[10start(次方), 10stop()次方]上的num个数据的等比数组】
    以及 ones、zeros、empty和ones_like等系列函数的运用:
    '''

    1-numpy.array

    # numpy.array
    # array()函数,括号内可以是列表、元组、数组、迭代对象、生成器
    import numpy as np
    print(np.array([6, 6, 6]))  # 列表
    print(np.array((8, 8, 8)))  # 元组
    print(np.array(np.array([9, 9, 9])))        # 数组
    print(np.array(range(10)))  # 迭代对象 / 整型
    print(np.array([i**2 for i in range(10)]))  # 生成器
    # 创建10以内的奇数的数组:
    print(np.array([i for i in range(1, 10, 2)]))
    print(np.array([i for i in range(10) if i % 2 != 0]))
    # 创建10以内的偶数的数组:
    print(np.array([i for i in range(0, 10, 2)]))
    print(np.array([i for i in range(10) if i % 2 == 0]))
    # 列表中元素类型不相同
    print(np.array([5, 2, '0']))    # ['5' '2' '0']
    # 浮点型
    print(np.array([3, 4, 5.2]))
    # 二维数组:【嵌套序列(列表、元组均可)】
    print(np.array([[6, 7, 8], ('lxw', 'cw', 'wl')]))
    print(np.array([[6, 7, 8], ('lxw', 'cw', 'wl')]).ndim)                          # ndim(维度): 2
    # 嵌套数量不一致:【强制转化为一维,推荐不用】
    print(np.array([[6, 7, 8], ('lxw', 'cw', 'wl', 'npy')], dtype=object))
    print(np.array([[6, 7, 8], ('lxw', 'cw', 'wl', 'npy')], dtype=object).ndim)     # ndim(维度):1
    print(np.array([[6, 7, 8], ('lxw', 'cw', 'wl', 'npy')], dtype=object).shape)    # 运行结果:(2,)
    print(np.array([[6, 7, 8], [9, 9, 6, 9]], dtype=object))
    print(np.array([[6, 7, 8], [9, 9, 6, 9]], dtype=object).ndim)                   # ndim(维度):1
    print(np.array([[6, 7, 8], [9, 9, 6, 9]], dtype=object).shape)                  # 运行结果:(2,) -> 代表两行一列

    2-numpy.empty

    # numpy.empty
    '''
    numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组
    numpy.empty(shape, dtype = float, order = 'C')
    参数说明:
    参数	描述
    shape	数组形状
    dtype	数据类型,可选
    order	有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序
    
    '''
    import numpy as np
    lxw = np.empty([3, 4], dtype=int)
    print(lxw)  # 注意:数组元素为随机值,因为它们未初始化

    3-numpy.zeros

    # numpy.zeros
    '''
    创建指定大小的数组,数组元素以 0 来填充:
    numpy.zeros(shape, dtype = float, order = 'C')
    参数说明:
    order :	'C' 用于 C 的行数组,或者 'F' 用于 FORTRAN 的列数组
    '''
    import numpy as np
    lxw = np.zeros(6)                   # 默认为浮点数
    print(lxw)
    lxw2 = np.zeros((6, ), dtype=int)   # 设置类型为整数
    print(lxw2)
    # 自定义类型
    lxw3 = np.zeros((2, 2), dtype=[('lxw', 'i2'), ('lxw2', 'i4')])
    print(lxw3)

    4-numpy.ones

    # numpy.ones
    '''创建指定形状的数组,数组元素以 1 来填充:
    numpy.ones(shape, dtype = None, order = 'C')
    '''
    import numpy as np
    lxw4 = np.ones(8)   # 默认浮点数
    print(lxw4)
    lxw5 = np.ones([2, 2], dtype=int)
    print(lxw5)

     NumPy 从已有的数组创建数组

    1-numpy.asarray

    # numpy.asarray
    '''
    numpy.asarray 类似 numpy.array,但 numpy.asarray 参数只有三个,比 numpy.array 少两个。
    numpy.asarray(a, dtype = None, order = None)
    参数说明:
    参数	描述
    a	任意形式的输入参数,可以是,列表, 列表的元组, 元组, 元组的元组, 元组的列表,多维数组
    
    '''
    # 将列表转换为 ndarray:
    import numpy as np
    x = [5, 2, 0]
    lxw6 = np.asarray(x)
    print(lxw6)
    # 将元组转换为 ndarray
    import numpy as np
    x2 = (1, 3, 1, 4)
    lxw7 = np.asarray(x2)
    print(lxw7)
    # 设置了 dtype 参数
    import numpy as np
    x4 = [6, 6, 9]
    lxw9 = np.asarray(x4, dtype=float)
    print(lxw9)

    2-numpy.frombuffer

    # numpy.frombuffer
    '''
    numpy.frombuffer 用于实现动态数组;接受 buffer 输入参数,以流的形式读入转化成 ndarray 对象。
    格式如下:
    numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
    注:buffer 是字符串的时候,Python3 默认 str 是 Unicode 类型,所以要转成 bytestring 在原 str 前加上 b。
    参数说明:
    参数	描述
    buffer	可以是任意对象,会以流的形式读入。
    dtype	返回数组的数据类型,可选
    count	读取的数据数量,默认为-1,读取所有数据。
    offset	读取的起始位置,默认为0
    
    '''
    import numpy as np
    s = b'lxw_pro'
    lxw10 = np.frombuffer(s, dtype='S1')
    print(lxw10)

    3-numpy.fromiter

    # numpy.fromiter
    '''
    numpy.fromiter 方法从可迭代对象中建立 ndarray 对象,返回一维数组。
    numpy.fromiter(iterable, dtype, count=-1)
    '''
    import numpy as np
    lst = range(6)
    it = iter(lst)
    lxw11 = np.fromiter(it, dtype=float)
    print(lxw11)

    NumPy 从数值范围创建数组

    1-numpy.arange

    # numpy.arange
    '''
    numpy 包中的使用 arange 函数创建数值范围并返回 ndarray 对象,函数格式如下:
    numpy.arange(start, stop, step, dtype)
    根据 start 与 stop 指定的范围以及 step 设定的步长,生成一个 ndarray。
    参数说明:
    参数	描述
    start	起始值,默认为0
    stop	终止值(不包含)
    step	步长,默认为1
    dtype	返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型
    
    '''
    # 生成0和5的数组
    import numpy as np
    a = np.arange(6)
    print(a)
    # 设置返回类型位 float
    import numpy as np
    a2 = np.arange(6, dtype=float)
    print(a2)
    # 设置了起始值、终止值及步长
    import numpy as np
    a3 = np.arange(20, 52, 5)
    print(a3)

    2-numpy.linspace

    # numpy.linspace
    '''
    numpy.linspace 函数用于创建一个一维数组,数组是一个等差数列构成的,格式如下:
    np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
    参数说明:
    
    参数	描述
    start	序列的起始值
    stop	序列的终止值,如果endpoint为true,该值包含于数列中
    num	要生成的等步长的样本数量,默认为50
    endpoint	该值为 true 时,数列中包含stop值,反之不包含,默认是True。
    retstep	如果为 True 时,生成的数组中会显示间距,反之不显示。
    dtype	ndarray 的数据类型
    
    '''
    # 类似等差数列
    import numpy as np
    a4 = np.linspace(1, 10, 5)
    print(a4)
    # 设置元素全部是1的等差数列
    import numpy as np
    a5 = np.linspace(1, 1, 10)
    print(a5)
    # 将 endpoint 设为 false,不包含终止值
    import numpy as np
    a6 = np.linspace(8, 22, 4, endpoint=False)
    print(a6)
    # 注:将 endpoint 设为 true,则会包含 22
    a6 = np.linspace(8, 22, 4, endpoint=True)
    print(a6)
    # 设置间距
    import numpy as np
    a7 = np.linspace(5, 10, 5).reshape([5, 1])
    print(a7)

    3-numpy.logspace

    # numpy.logspace
    '''
    numpy.logspace 函数用于创建一个于等比数列。格式如下:
    np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
    base 参数意思是取对数的时候 log 的下标。
    参数	描述
    start	序列的起始值为:base ** start
    stop	序列的终止值为:base ** stop。如果endpoint为true,该值包含于数列中
    num	要生成的等步长的样本数量,默认为50
    endpoint	该值为 true 时,数列中中包含stop值,反之不包含,默认是True。
    base	对数 log 的底数。
    dtype	ndarray 的数据类型
    
    '''
    import numpy as np
    a8 = np.logspace(1, 2, num=10)      # 默认底数是 10
    print(a8)
    # 将对数的底数设置为 2
    import numpy as np
    a9 = np.logspace(0, 8, 9, base=2)
    print(a9)

    综合运用【array、arange、linspace、lonspace】:

    # 综合运用
    import numpy as np
    ltw = np.array([3, 3, 4, 4])    # 生成整型数组
    ltw2 = ltw.astype(float)        # 转为浮点数
    ltw3 = np.array([5, 2, 1], dtype=float) # 浮点数
    print(ltw)
    print(ltw2)
    print(ltw3)
    # 比较类型
    print(ltw.dtype, ltw2.dtype, ltw3.dtype)
    aa = np.array([
        [2, 5, 8],
        [9, 6, 2]
    ])
    print(aa)
    bb = np.arange(2, 9)
    print(bb)   # 运行结果为:[2 3 4 5 6 7 8]
    cc = np.linspace(2, 5, 4)
    print(cc)   # 运行结果为:[2. 3. 4. 5.]
    dd = np.logspace(1, 4, 4, base=2)   # base控制的是几次方
    print(dd)   # 运行结果为:[ 2.  4.  8. 16.]

    综合运用【ones、zeros、empty、ones_like】

    # 综合运用【ones、zeros、empty、ones_like】
    import numpy as np
    a = np.ones(6, dtype=int)
    print(a)    # 运行结果为:[1 1 1 1 1 1]
    b = np.ones((6,), dtype=int)
    print(b)    # 运行结果为:[1 1 1 1 1 1]
    
    c = np.ones((3, 1))
    print(c)    # 输出3行一列的数组
    # 运行结果为:
    # [[1.]
    #  [1.]
    #  [1.]]
    d = np.zeros(4)
    print(d)    # 运行结果为:[0. 0. 0. 0.]
    
    e = np.empty(3)
    print(e)    # 生成3个元素的空数组行向量
    # 运行结果为:[1. 1. 1.]
    
    f = np.eye(3)
    print(f)    # 生成3阶单位阵
    # 运行结果为:
    # [[1. 0. 0.]
    #  [0. 1. 0.]
    #  [0. 0. 1.]]
    
    g = np.eye(3, k=1)
    print(g)    # 生成第k对角线的元素为1,其他元素为0的3阶方阵
    # 运行结果为:
    # [[0. 1. 0.]
    #  [0. 0. 1.]
    #  [0. 0. 0.]]
    
    h = np.zeros_like(b)
    print(h)  # 生成与a同维数的全0数组
    # 运行结果为:[0 0 0 0 0 0]

    1. NumPy 切片和索引

    # NumPy 切片和索引
    '''
    ndarray对象的内容可以通过索引或切片来访问和修改,与 Python 中 list 的切片操作一样。
    
    ndarray 数组可以基于 0 - n 的下标进行索引,
    切片对象可以通过内置的 slice 函数,并设置 start, stop 及 step 参数进行,从原数组中切割出一个新数组
    
    '''
    import numpy as np
    # 通过 arange() 函数创建 ndarray 对象
    a = np.arange(10)
    lxw = slice(2, 9, 3)    # 索引从2到9,间隔为3
    
    print(a[lxw])       # [2 5 8]
    
    # 通过切片操作
    a = np.arange(10)
    lxw2 = a[2:9:3]         # 这里的切片操作和Python中list的操作是一样的
    print(lxw2)         # [2 5 8]
    # 比如:
    import numpy as np
    lxw3 = np.arange(10)
    print(lxw3[6])      # 6
    print(lxw3[6:])     # [6 7 8 9]
    print(lxw3[2:7])    # [2 3 4 5 6]
    # 多维数组同样适用上述索引提取方法
    import numpy as np
    lxw4 = np.array([
        [6, 6, 6],
        [5, 2, 0],
        [5, 8, 9]
    ])
    print(lxw4)
    print(lxw4[1:])
    # 切片还可以包括省略号 …,来使选择元组的长度与数组的维度相同。
    # 如果在行位置使用省略号,它将返回包含行中元素的 ndarray
    import numpy as np
    lxw5 = np.array([
        [1, 2, 9],
        [2, 5, 4],
        [3, 4, 8]
    ])
    print(lxw5[1, ...])     # [2 5 4]   第二行元素
    print(lxw5[..., 2])     # [9 4 8]   第三列元素
    print(lxw5[1:, ...])    # 第二行及剩下元素
    print(lxw5[..., 1:])    # 第二列及剩下元素

    NumPy 高级索引

    • Numpy中的array数组与Python基础数据结构列表(list)的区别是:

    • 列表中的元素可以是不同的数据类型array数组只允许存储相同的数据类型

    NumPy 比一般的 Python 序列提供更多的索引方式。

    • 除了之前看到的用整数和切片的索引外,数组可以由

    • 整数数组索引布尔索引花式索引

    1-整数数组索引

    # 1-整数数组索引
    import numpy as np
    b = np.array([
        [6, 2, 9],
        [4, 3, 9],
        [5, 2, 3]
    ])
    lxw6 = b[
        [0, 1, 2], [1, 2, 1]
    ]
    print(lxw6)     # 输出 [2 9 2]
    # 获取四个角元素
    import numpy as np
    aq = np.array([
        [1, 2, 3, 4],
        [2, 3, 4, 5],
        [3, 4, 5, 6],
        [4, 5, 6, 7]
    ])
    print(aq)
    hj = np.array([[0, 0], [3, 3]])
    lj = np.array([[0, 3], [0, 3]])
    yq = aq[hj, lj]
    print(yq)
    print()
    # 可借助切片 : 或 … 与索引数组组合:
    import numpy as np
    
    jz = np.array([
        [3, 5, 9],
        [5, 2, 6],
        [2, 9, 8]
    ])
    jz1 = jz[:2, :2]
    print(jz1)
    jz2 = jz[:2, [0, 1]]
    print(jz2)
    jz3 = jz[..., 1:]
    print(jz3)

    2-布尔索引

    # 布尔索引
    # 布尔索引可通过布尔运算(如:比较运算符)来获取符合指定条件的元素的数组
    # 获取大于5的元素:
    import numpy as np
    br = np.array([
        [6, 7, 8],
        [5, 2, 1],
        [6, 6, 9],
        [2, 4, 5]
    ])
    print(br)
    print(br[br > 5])               # 输出 [6 7 8 6 6 9]
    # 使用 ~(取补运算符)来过滤 NaN:
    import numpy as np
    bu = np.array([5, np.nan, 2, 0, np.nan, np.nan, 5, 8])
    print(bu[~np.isnan(bu)])        # 输出 [5. 2. 0. 5. 8.]
    # 从数组中过滤掉非复数元素:
    import numpy as np
    lv = np.array([2+2.9j, 4, 9, 2+8.2j, 8])
    print(lv[np.iscomplex(lv)])     # 输出 [2.+2.9j 2.+8.2j]

    3-花式索引

    # 花式索引【利用整数数组进行索引】
    # 花式索引根据索引数组的值作为目标数组的某个轴的下标来取值。
    # 对于使用一维整型数组作为索引,如果目标是一维数组,那么索引的结果就是对应下标的行,
    # 如果目标是二维数组,那么就是对应位置的元素。
    # 注:花式索引跟切片不一样,它总是将数据复制到新数组中。
    # 1.传入顺序索引数组
    import numpy as np
    sx = np.arange(32).reshape(8, 4)
    print(sx[[5, 2, 1, 6]])
    # 2.传入倒序索引数组
    import numpy as np
    dx = np.arange(32).reshape(8, 4)
    print(dx[[-5, -2, -1, -6]])
    # 3.传入多个索引数组(要使用np.ix_)
    import numpy as np
    dg = np.arange(32).reshape(8, 4)
    print(dg[np.ix_([2, 3, 5, 1], [3, 2, 0, 1])])

    三个实用小方法:

    • 条件加小括号

    • 使用np.logical_and方法

    • 使用np.all方法

    import numpy as np
    sy = np.array([
        [3, 5, 6],
        [2, 6, 2],
        [5, 2, 0],
        [3, 3, 4]
    ])
    # 原数组
    print(sy)
    # 1-
    print(sy[(sy > 3) & (sy < 6)])  # 条件记得加小括号
    # 2-
    print(sy[np.logical_and(sy > 3, sy < 6)])
    # 3-
    print(sy[np.all([sy > 3, sy < 6], axis=0)])

    综合运用【数组元素的索引】

    相关代码如下:

    import numpy as np
    x = np.arange(16).reshape(4, 4)
    print(x)    # 生成4行4列的数组
    x2 = x[2][1]
    print(x2)   # 输出 9
    x3 = x[2, 1]
    print(x3)   # 输出 9
    x4 = x[1:2, 2:4]
    print(x4)   # 输出 [[6 7]]
    xx = np.array([0, 1, 2, 1])
    print(x[xx == 1])   # 输出x的第2、4行元素

    Pandas学习(续)

    # Pandas学习(续)
    # Pandas库是在Numpy库基础上开发的一种数据分析工具
    '''
    Pandas主要提供了三种数据结构:
    1-Series: 带标签的一维数组
    2-DataFrame: 带标签且大小可变得二维表格结构
    3-Panel: 带标签且大小可变得三维数组
    
    '''
    # 生成二维数组
    # 生成服从标准正态分布的24*4随机数矩阵,并保存为DataFrame数据结构。
    import pandas as pd
    import numpy as np
    dates = pd.date_range(start='20220622', end='20220707', freq='D')
    print(dates)

    运行效果如下:

    Python数学建模:Numpy和Pandas应用实例分析

    lxw1 = pd.DataFrame(np.random.randn(16, 4), index=dates, columns=list('ABCD'))
    lxw2 = pd.DataFrame(np.random.randn(16, 4))
    print(lxw1)
    print(lxw2)

    运行结果如下:

    Python数学建模:Numpy和Pandas应用实例分析

    Python数学建模:Numpy和Pandas应用实例分析

    1 将数据写入excel、csv文件

    # 将lxw1的数据写入excel文件
    lxw1.to_excel('假期培训时间.xlsx')
    lxw1.to_excel("时间任意.xlsx", index=False)     # 不包含行索引
    # 将lxw2的数据写入csv文件
    lxw2.to_csv('假期培训时间.csv')
    lxw2.to_csv("时间随意.csv", index=False)                     # 不包含行索引
    # 创建文件对象
    f = pd.ExcelWriter('培训时间(格式).xlsx')
    # 把lxw1写入Excel文件
    lxw1.to_excel(f, "Shell1")
    # 把lxw2写入Excel文件
    lxw2.to_excel(f, "Sheet2")
    f.save()

    部分效果图如下:

    Python数学建模:Numpy和Pandas应用实例分析

    Python数学建模:Numpy和Pandas应用实例分析

    # 从文件中读入数据:
    import pandas as pd
    lxw3 = pd.read_csv("假期培训时间.csv", usecols=range(1, 4))
    print(lxw3)

    运行结果如下:

    Python数学建模:Numpy和Pandas应用实例分析

    lxw4 = pd.read_excel("培训时间(格式).xlsx", "Sheet2", usecols=range(1, 3))
    print(lxw4)

    Python数学建模:Numpy和Pandas应用实例分析

    2 数据的一些预处理

    # 数据的一些预处理
    
    # DataFrame数据的拆分、合并和分组计算:
    import pandas as pd
    import numpy as np
    lxw5 = pd.DataFrame(np.random.randint(1, 6, (10, 4)), columns=list('ABCD'))
    print(lxw5)

    Python数学建模:Numpy和Pandas应用实例分析

    lxww = lxw5[:5]     # 获取前五行数据
    print(lxww)

    Python数学建模:Numpy和Pandas应用实例分析

    lxwy = lxw5[5:]     # 获取第六行以后的数据
    print(lxwy)

    Python数学建模:Numpy和Pandas应用实例分析

    wy = pd.concat([lxww, lxwy])    # 数据行合并
    print(wy)

    Python数学建模:Numpy和Pandas应用实例分析

    q1 = lxw5.groupby('A').mean()   # 数据分组求均值
    print(np.around(q1, decimals=2))    # decimals表示保留几位小数

    Python数学建模:Numpy和Pandas应用实例分析

    q2 = lxw5.groupby('A').apply(sum)   # 数据分组求和
    print(q2)

    Python数学建模:Numpy和Pandas应用实例分析

    3 数据的选取与操作

    # 数据的选取与操作
    '''
    对DataFrame进行选取,要从3个层次考虑:行列、区域、单元格
    1-选用中括号[]选取行列
    2-使用行和列的名称进行标签定位的df.loc[]
    3-使用整型索引(绝对位置索引)的df.iloc[]
    当然,在数据预处理中,需要对缺失值等进行一些特殊处理
    
    '''
    # 数据操作:
    import pandas as pd
    import numpy as np
    
    qq = pd.DataFrame(np.random.randint(1, 5, (6, 4)),
                      index=['a', 'b', 'c', 'd', 'e', 'f'],
                      columns=['one', 'two', 'three', 'four'])
    
    qq.loc['c', 'two'] = np.nan     # 修改第三行第二列的数据
    print(qq)

    Python数学建模:Numpy和Pandas应用实例分析

    ww = qq.iloc[1:4, 0:2]          # 提取第二、三、四行,第一、二列数据
    print(ww)

    Python数学建模:Numpy和Pandas应用实例分析

    qq['five'] = 'lxw'              # 增加第五列数据
    print(qq)

    Python数学建模:Numpy和Pandas应用实例分析

    qq2 = qq.reindex(['a', 'b', 'c', 'd', 'e', 'f', 'g'])   # 增加行名
    print(qq2)

    Python数学建模:Numpy和Pandas应用实例分析

    qq3 = qq2.dropna()              # 删除有不确定值的行
    print(qq3)                      # 从输出不难看出,删除了c行和g行

    Python数学建模:Numpy和Pandas应用实例分析

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Python Numpy Pandas
    相关文章 更多
    精品专题 更多
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    IOS软件

    正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

    AI

    正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

    Mac软件 更多
    Aperty macOS版
    Aperty macOS版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw macOS版
    AionClaw macOS版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy macOS版
    Loomy macOS版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirBuddy 3 macOS版
    AirBuddy 3 macOS版

    AirBuddy 3 是面向 macOS 的蓝牙外设增强工具,可集中查看 AirPods、Beats 与苹果设备电量,提供快速连接、播放控制、电量提醒、桌面小组件和多台 Mac 外设接力等功能。

    AirServer macOS版
    AirServer macOS版

    AirServer macOS版可把 Mac 转换为无线投屏接收端,通过 AirPlay 或 Google Cast 接收手机、平板和电脑画面,并支持多设备同时连接、高清镜像及会话录制,适合家庭娱乐、课堂教学、会议演示和应用展示。

    AnyDesk macOS版
    AnyDesk macOS版

    AnyDesk macOS版是一款适用于远程办公、设备维护和客户支持的远程桌面工具,可连接并操作异地计算机,支持文件传输、无人值守访问、会话权限控制及跨平台协作。

    WINDOWS 更多
    讯飞绘文 网页版
    讯飞绘文 网页版

    讯飞绘文网页版是科大讯飞推出的AI图文创作与内容运营工具,覆盖热点选题、文章生成、稿件校对、智能配图、排版发布和数据复盘等环节,适合自媒体创作者及内容团队在线使用。

    Maya(Autodesk Maya) Windows版
    Maya(Autodesk Maya) Windows版

    Autodesk Maya 是面向影视、电视、动画和游戏行业的专业三维制作软件,集多边形与 NURBS 建模、角色绑定、关键帧和动作捕捉动画、Bifrost 特效模拟、材质开发及 Arnold 渲染于一体,

    Aperty Windows版
    Aperty Windows版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw Windows版
    AionClaw Windows版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy Windows版
    Loomy Windows版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirServer Windows版
    AirServer Windows版

    AirServer Windows版可把电脑变成AirPlay、Google Cast和Miracast无线投屏接收端,适合会议演示、课堂教学及家庭大屏分享。发送设备通常无需另装客户端,并可同时接收和智能排列多个镜像会话。