使用Isolation forest算法处理大规模数据方法介绍

Isolation Forest vs LOF vs One-Class SVM:3 大无监督异常检测算法核心差异与选型指南 本文深入比较了三种主流无监督异常检测算法——Isolation Forest、LOF和One-Class SVM的核心差异与适用场景。通过分析算法原理、计算效率和参数敏感性,提供了一套完整的选型决策框架,帮助数据科学家在金融欺诈识别、工业设备预警等场景中选择最优解决方案。特别适合需要处理大规模异常检测任务的从业者参考。 阅读详情

在做数据挖掘时,我们常常因为自身电脑的配置不高,所以在运行代码时出现,cpu利用率太高或者内存使用率直接爆表的情况。在这里我介绍一种处理方法,这种方法所传递的思想,也可以用到类似的场景中去。本文是基于Isolation forest处理异常数据所采用的方法,其中原始数据非常庞大,数据量超过千万条,虽然Isolation forest这个算法实用性非常大,但是当数据量达到一定程度时,对于电脑硬件也是非常吃力的。所以我这里直接使用了一个分块批处理的思想方法(批处理思想:将一个大规模数据分成多个小块进行计算,然后汇总整合得出结果),这种思想在计算机领域应用很广泛,我在这里再补充一点,这种方法更多的是给一些初学者提高一个思考的方向,用以提高效率,解决实际问题。

数据量:1000w以上

运行环境:python3.7+pycharm

代码:

#!/usr/bin/env python3
#coding=utf-8

import pandas as pd
from sklearn.ensemble import IsolationForest
import os
import numpy as np

#使用isolation forest算法去除异常
def fileter_sale_data():
    rfilename='a.csv'
    df=pd.read_csv(rfilename,engine='python',encoding='utf-8')
    need_col=np.array(df['discount_price'].values)
    ifmodel=IsolationForest(n_jobs=-1,max_samples=256,verbose=2)
    ifmodel.fit(need_col.reshape(-1,1)) #使用values.reshape(-1,1)将一维数组转换成二维数组
    lendata=df.discount_price.shape[0]
    #print(lendata)
    batch=10**5
    #将大规模数据进行分块处理计算
    all_if_predict=[]
    for index in range(lendata//batch+1): 
        start=index * batch
        end=(index+1) * batch
        batch_data=need_col[start:end].reshape(-1,1)
        if_predict=ifmodel.predict(batch_data)
        all_if_predict.extend(if_predict)
    df['datatype']=all_if_predict
    df.to_csv(r'b.csv',index=False)


if __name__=='__main__':
    fileter_sale_data()
3种异常检测算法对比:One-Class SVM vs Isolation Forest vs LOF 性能实测 本文对比了三种主流无监督异常检测算法——One-Class SVM、孤立森林(Isolation Forest)和局部异常因子(LOF)在信用卡欺诈检测等真实场景中的性能表现。通过实测数据展示了各算法在训练时间、预测速度、内存占用及F1-Score等关键指标上的差异,并提供了针对不同应用场景的选型建议和工程优化技巧,为机器学习领域的异常检测任务提供实用参考。 阅读详情

相关推荐

11、基于Isolation Forest的异常检测模型搭建与调优

本文介绍了如何基于Isolation Forest构建异常检测模型,并通过超参数调优提升模型性能。从数据准备、模型初始化到训练与评估,详细展示了各个步骤的操作方法和关键代码。经过调优,模型在训练集和测试集上均取得了较高的精度、召回率和F1分数,同时具备处理高维数据和大规模数据的能力。

kk1234的博客 70

孤立森林:大数据背景下的最佳异常检测算法之一

孤立森林或“iForest”是一个非常漂亮和优雅简单的算法,可以用很少的参数来识别异常。原始的论文对广大的读者来说是容易理解的,并且包含了很少的数学知识。在这篇文章中,我将解释为什么iForest是目前最好的大数据异常检测算法,提供算法的总结,算法的历史,并分享一个代码实现。 为什么iForest是目前最好的大数据异常检测算法 iForest有着基于ROC性能和精度的一流的综合性能。iForest在各种数据集上的性能均优于大多数其他异常值检测(OD)算法。 我从Python离群值检测包(PyOD)的作者那.

deephub 6885

ML之IF:孤立森林(Isolation Forest )算法的简介、案例应用之详细攻略

ML之IF:孤立森林(Isolation Forest )算法的简介、案例应用之详细攻略 目录 孤立森林(Isolation Forest )算法的简介 孤立森林(Isolation Forest )算法的概述 孤立森林(Isolation Forest )算法的案例应用 孤立森林(Isolation Forest )算法的简介 孤立森林(Isolation Forest )算法的概述 简介 孤立森林中的 “孤立” (isolation) 指的是 “把异常点从所有样本中孤立出

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 6578

Forest详细介绍

Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL、Header 以及 Body 等信息)绑定到您自定义的 Interface 方法上,能够通过调用本地接口方法的方式发送 HTTP 请求

qq_65377318的博客 8520

小红书x-mini签名逆向实战:Frida动态Hook与算法还原

在移动App协议分析中,请求签名机制是保障接口安全的核心技术,其本质是客户端对请求参数、时间戳、设备指纹等要素进行加密认证的过程。理解签名原理需掌握Native层加密流程、JNI调用机制及密钥动态派生逻辑。Frida作为主流动态插桩工具,能绕过符号剥离、字符串加密和控制流混淆等反分析手段,在函数执行瞬间捕获寄存器状态、内存数据与调用上下文,实现签名算法的完整还原。该技术广泛应用于合规内容监测、API自动化调用与竞品协议研究等工程场景。本文聚焦小红书x-mini签名这一典型样本,详解从JNI_OnLoad定位

weixin_31264565的博客 463

移远EC20模块USB模式切换的底层逻辑与驱动适配探秘

本文深入探讨了移远EC20模块USB模式切换的底层逻辑与驱动适配机制,详细解析了AT命令控制下的USB0与WWAN0模式差异。通过分析USB协议栈、内核驱动框架及网络子系统的交互,提供了模式切换的完整操作流程和常见问题解决方案,助力开发者优化4G通信模块在嵌入式设备中的稳定连接。

cc789的博客 845

在envi做随机森林_异常检测怎么做,试试孤立随机森林算法(附代码)

异常检测看似是机器学习中一个有些难度的问题,但采用合适的算法也可以很好解决。本文介绍了孤立森林(isolation forest)算法,通过介绍原理和代码教你揪出数据集中的那些异常值。选自blog.paperspace,作者:Dhiraj K,机器之心编译,参与:李诗萌、一鸣。从银行欺诈到预防性的机器维护,异常检测是机器学习中非常有效且普遍的应用。在该任务中,孤立森林算法是简单而有效的选择。本文内...

weixin_39828715的博客 1379

vins-mono保存、重载地图、evo工具测试

下面咱们来对vins-mono的重定位vins-mono官方源码地址:https://github.com/HKUST-Aerial-Robotics/VINS-Mono https://blog.youkuaiyun.com/learning_tortosie/article/details/83182258 运行这条: roslaunch benchmark_publisher publish.launc...

追 1万+

孤立随机森林(Isolation Forest)(Python实现)

孤立森林(isolation Forest)是一种高效的异常检测算法,它和随机森林类似,但每次选择划分属性和划分点(值)时都是随机的,而不是根据信息增益或基尼指数来选择。Isolation,意为孤立/隔离,是名词,其动词为isolate,forest是森林,合起来就是“孤立森林”了,也有叫“独异森林”,好像并没有统一的中文叫法。可能大家都习惯用其英文的名字isolation forest,简称iForest。

m0_73907476的博客 670

Transformer模型详解(图解最完整版)

Transformer由论文提出,现在是谷歌云TPU推荐的参考模型。论文相关的Tensorflow的代码可以从GitHub获取,其作为Tensor2Tensor包的一部分。哈佛的NLP团队也实现了一个基于PyTorch的版本,并注释该论文。在本文中,我们将试图把模型简化一点,并逐一介绍里面的核心概念,希望让普通读者也能轻易理解。Transformer 与 RNN 不同,可以比较好地并行训练。

2501_91695094的博客 2704

告别功能限制:Win11家庭版无损升级专业版全攻略

本文详细介绍了如何将Win11家庭版无损升级到专业版的全过程,包括升级前的准备、两种官方升级方案(Microsoft Store购买和使用产品密钥)以及命令行升级方法。升级后可解锁远程桌面、组策略编辑器和BitLocker加密等高级功能,适合需要更多商业功能的用户。

weixin_32822843的博客 709

异常检测(二)——IsolationForest

1、简介 孤立森林(Isolation Forest)是另外一种高效的异常检测算法,它和随机森林类似,但每次选择划分属性和划分点(值)时都是随机的,而不是根据信息增益或者基尼指数来选择。在建树过程中,如果一些样本很快就到达了叶子节点(即叶子到根的距离d很短),那么就被认为很有可能是异常点。因为那些路径d比较短的样本,都是因为距离主要的样本点分布中心比较远的。也就是说,可以通过计算样本在所有树中的平均路径长度来寻找异常点。 sklearn提供了ensemble.IsolationForest模块可用于Is

lizz2276的博客 1227

Agile Modbus使用和学习笔记

i < len;这里仅仅需要提供获取函数即可,离散输入是只读类型i++) {return 0;只读类型寄存器i++) {return 0;i < len;

Car12 169

算法实战应用案例精讲-【数模应用】异常点检测算法——Isolation Forest

什么时候我们需要异常点检测算法呢?常用的有三种情况。1.做数据预处理的时候需要对异常的数据做过滤,防止对归一化等处理的结果。2.对没有标记输出的特征数据做筛选,找出异常的数据。3.对有标记输出的特征数据做二分类时,由于某些类别的训练样本非常少,类别严重不平衡,此时也可以考虑用非监督的异常点检测算法来做。

qq_36130719的博客 233

pcie硬件时序分析实战(PHY层眼图测量)​

PCIe高速接口的信号完整性(SI)直接影响系统带宽和稳定性。其中,​。

xiaoheshang_123的博客 860

YOLOv8 智能交通流量监测完整解决方案

YOLOv8智能交通流量监测系统基于先进的目标检测技术,提供实时车辆识别与统计分析功能。该系统通过虚拟检测线实现多方向车流量统计,支持多种车辆类型分类,并具备数据可视化、异常事件预警等核心功能。完整解决方案包含模型训练、实时检测、批量处理、结果分析等模块,并提供Flask API和Docker两种部署方案。系统采用YOLOv8算法实现高效检测,支持GPU加速,可通过量化、剪枝等技术进一步优化性能,为智能交通管理提供可靠的数据支持和技术保障。

u010117029的博客 119

孤立森林(Isolation Forest)算法剖析

之后会持续更新算法剖析系列,力图用最生动的例子演示每一个算法的原理,不稀里糊涂做一个调包侠。欢迎持续关注,指正不足。 孤立森林(Isolation Forest)算法是西瓜书作者周志华老师的团队研究开发的算法,一般用于结构化数据的异常检测。 异常的定义 针对于不同类型的异常,要用不同的算法来进行检测,而孤立森林算法主要针对的是连续型结构化数据中的异常点。 使用孤立森林的前提是,将异常点定义...

小数据研究院 1万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Isolation Forest分布式实现教程

Isolation Forest分布式实现教程 项目介绍 Isolation Forest算法 是一种用于无监督异常检测的强大工具,由LinkedIn的Anti-Abuse AI团队成员James Verbus开发了这个基于Scala和Spark的分布式实现。该库支持在Scala环境中利用Spark数据结构进行分布式训练和评分,继承自Spark ML库中的Estimator和Model类,便于集成...

gitblog_00100的博客 944

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

孤立森林(Isolation Forest)

iForest (Isolation Forest)孤立森林 是一个基于Ensemble的快速异常检测方法,具有线性时间复杂度和高精准度,是符合大数据处理要求的state-of-the-art算法(详见新版教材“Outlier Analysis”第5和第6章 PDF)。其可以用于网络安全中的攻击检测,金融交易欺诈检测,疾病侦测,和噪声数据过滤等。本文将通俗解释实现方法和日常运用,即无需深厚的数学功...

youhuakongzhi的博客 3088

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Isolation Forest实战精讲:从理论到部署的4个关键步骤

掌握时序异常的Isolation Forest,快速构建高效异常检测系统。本文详解金融、运维等场景的应用,涵盖数据预处理、模型训练、阈值设定与线上部署四大步骤,突出其无需标签、高计算效率的优势。方法实用,流程清晰,值得收藏并点击了解。

IterStream的博客 935

【工业级时序监控必备】:用Isolation Forest实现毫秒级异常识别

快速实现工业级时序异常检测,详解时序异常的 Isolation Forest 方法,适用于设备监控、日志分析等毫秒级响应场景。模型轻量、无需标签数据,支持高维流式数据实时预警。值得收藏

ProceNest的博客 756

异常检测算法:孤立森林(Isolation Forest)

比如常用的统计方法,基于分类的方法,和基于聚类的方法,这些传统算法通常是对正常的数据构建一个模型,然后把不符合这个模型的数据,认为是异常数据。预测的过程就是把测试数据在iTree树上沿对应的条件分支往下走,直到达到叶子节点,并记录这过程中经过的路径长度h(x),即从根节点,穿过中间的节点,最后到达叶子节点,所走过的边的数量(path length)。从上面的评价中来看,iForest算法在实际的应用中应该具有不错的效果,得益于随机森林的思想,能快速处理大规模的数据,在当前的大数据环境下,应该很受欢迎。

Machine Learning with Tutors 2万+

手把手教你使用 Isolation Forest 异常检测算法:从入门到实战

在当今数据驱动的世界中,**异常检测**已成为数据分析的关键环节。Isolation Forest(孤立森林)作为一种高效的**无监督学习算法**,专门用于识别数据中的异常点。本文将带你全面了解这一强大的**机器学习算法**,掌握其核心原理和实战应用。 ## 🔍 什么是 Isolation Forest 异常检测? Isolation Forest 是一种基于树结构的异常检测算法,其核心思想

gitblog_09695的博客 522

时序数据突增突降难发现?Isolation Forest一键精准定位异常点

时序数据突增突降难捕捉?基于时序异常的 Isolation Forest 可高效识别异常点,适用于监控、运维等场景,无需标注数据即可自动检测。模型轻量、准确率高,一键实现异常定位,值得收藏。

QuickSolve的博客 1039

Isolation Forest在时序异常中的应用(99%的人都忽略的关键细节)

掌握时序异常检测新思路:详解时序异常的 Isolation Forest 应用,适用于金融、运维等场景,利用孤立森林快速识别异常点,无需标签数据且计算高效。揭示99%人忽略的关键细节,值得收藏。

CodePulse的博客 724

Isolation Forest

PS: 个人实验结果,异常值检测准确率十分依赖于contamination参数的大小,如果contamination设置的大于实际大小,会出现很多将正常值判定为异常的情况,如果有不同意见,欢迎在评论区留言讨论, 摘要: iForest用于挖掘异...

平平淡淡,戒急用忍,一生学闭嘴。 894
上一篇: 关于使用django2.2.5出现“ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3”的问题
下一篇: 关于fbprophet环境配置的流程(本人亲测可行)
DM_learner
博客等级 码龄9年 21粉丝 23原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值