分类目录归档:Python

psutil-资源监控库-Python


psutil 是一个跨平台的库,用于获取系统和进程相关的各种信息。它可以帮助你监控系统资源(如CPU、内存、磁盘和网络)和进程。你可以使用 psutil 来获取以下信息:

  • CPU 信息:包括 CPU 使用率、核心数、频率等。
  • 内存信息:包括物理内存、虚拟内存的使用情况等。
  • 磁盘信息:磁盘的使用情况,包括分区、文件系统、磁盘IO等。
  • 网络信息:包括网络接口、IP 地址、网络流量等。
  • 进程信息:列出系统中的所有进程,获取进程的CPU、内存使用情况以及其他信息。

安装

要安装 psutil,你可以使用 pip

pip install psutil

示例用法

import psutil...

Read more

multiprocessing-并发编程-Python


multiprocessing 是 Python 标准库中的一个模块,用于支持并行计算。它能够通过创建多个进程来实现任务的并行执行,从而充分利用多核处理器的优势,提高程序的执行效率。

这里是一些 multiprocessing 常见用法:

1. 创建并启动多个进程

import multiprocessing

def worker(num):
    print(f"Worker {num} is working")

if __name__ == "__main__":
    processes = []
    for i in range...

Read more

XGBoost


XGBoost是一个经过优化的分布式梯度提升库,具备高效、灵活且可移植的特点。它在梯度提升框架下实现了机器学习算法。

高效性

  • 实现方式:XGBoost通过精心设计的算法实现,能够高效地处理数据和训练模型。它采用了一系列优化技术,例如在计算梯度和二阶导数时进行了高效处理,使得模型训练过程能够快速收敛,减少了训练所需的时间和计算资源。
  • 数据处理能力:对于大规模数据,它能凭借其分布式特性,充分利用集群计算资源,快速完成数据的读取、处理和模型训练等操作,确保在面对海量数据时依然能保持较高的运行效率。

灵活性

  • 算法灵活性:在梯度提升框架下,它可以根据不同的应用场景和数据特点,灵活调整各种算法...

Read more

LightGBM-


LightGBM是一个使用基于树的学习算法的梯度提升框架,具有分布式和高效的特点,以下是对其优点的详细介绍:

更快的训练速度和更高的效率

  • 基于直方图的算法:LightGBM采用直方图算法来构建决策树,它将连续的浮点特征值离散化成整数,并构造相应的直方图。在遍历数据时,根据离散化后的值在直方图中累积统计量,然后根据这些统计量来寻找最优的分割点。相比传统的预排序算法,直方图算法大大减少了计算量和内存消耗,从而提高了训练速度.
  • 单边梯度采样(GOSS):GOSS根据信息增益的定义,认为具有较大梯度的数据样本对信息增益的贡献更大。因此,在对数据样本进行下采样时,会保留梯度大的样本,并随机丢弃梯...

Read more

scikit-learn


scikit-learn(通常简称为 sklearn)是一个用于机器学习的Python开源库,它功能强大、应用广泛,以下是关于它的详细介绍:

概述

  • sklearn 提供了丰富的机器学习算法、工具和实用程序,旨在简化机器学习任务的实现过程,无论是分类、回归、聚类还是降维等不同类型的任务,都能借助该库高效完成,并且其设计注重代码的简洁性、易用性以及高效性,被大量数据科学家、分析师以及机器学习爱好者广泛使用。

功能模块

  • 分类算法
    • 支持向量机(SVM):通过寻找一个最优的超平面,将不同类别的数据点尽可能地分开,有线性可分和非线性可分(通过核技巧,如高斯核等将数据映射到高维空间使其线性可分...

Read more

pyportfolioopt-投资组合


文档

pyportfolioopt 是一个用于投资组合优化的 Python 库,它提供了多种优化方法和工具,帮助投资者构建和优化投资组合。这个库基于现代投资组合理论,支持多种资产配置策略,包括均值-方差优化、风险平价、最小方差组合等。

主要功能

  1. 数据获取:从 Yahoo Finance 等数据源获取股票历史数据。
  2. 预期收益和协方差矩阵估计:计算资产的预期收益和协方差矩阵。
  3. 投资组合优化:实现多种优化方法,如均值-方差优化、最小方差组合、最大夏普比率组合等。
  4. 风险模型:支持多种风险模型,如单因素模型、多因素模型等。
  5. 绩效评估:提供绩效评估工具,如夏普比率、信息比率等。

安装

你可以使用...

Read more

findpeaks-查找峰值


scipy.signal.find_peaks 是 SciPy 信号处理库中的一个函数,用于在数据序列中查找峰值(即局部最大值)。这个函数非常有用,特别是在处理时间序列数据、频谱分析和其他需要识别数据中显著特征的场景中。

函数签名

scipy.signal.find_peaks(x, height=None, threshold=None, distance=None, prominence=None, width=None, wlen=None, rel_height=0.5, plateau_size=None)

参数说明

  • x (array_like): 输入数据序列。
  • hei...

Read more

Statsmodels-统计模型库


Statsmodels是一个Python模块,具备以下诸多功能:

功能概述

  • 统计模型估计:提供了用于估计多种不同统计模型的类和函数。无论是常见的线性回归模型、时间序列分析模型(如ARIMA等),还是其他各类复杂的统计模型,都能借助statsmodels中的相关工具进行参数估计等操作,从而帮助用户构建合适的统计模型以拟合数据并进行分析。
  • 统计检验执行:可以开展各种统计检验。比如检验两个变量之间是否存在显著的线性关系(通过t检验等),或者检验一组数据是否符合某种特定的分布(如正态分布检验等)。这些统计检验对于验证假设、评估模型的合理性等方面起着至关重要的作用。
  • 统计数据探索:支持对统计数据...

Read more