技术文章

机器学习之数据分析

梦想的初衷 提交于 2021-02-18 06:28:56
熟话说,'巧妇难为无米之炊',数据和特征就是'米',模型和算法则是'巧妇',没有充足的数据、合适的特征,再强大的模型结构也无法得到满意的输出,为了更好的使用模型,必须先对数据有个正确的认识,本博将对数据分析的三种方法(描述性统计,数据可视化和相关性系数)进行总结,为数据预处理准备 1. sklearn数据集类型 - 自带的小数据集:sklearn.datasets.load_<name> 鸢尾花数据集:load_iris() 乳腺癌数据集:load_breast_cancer() 手写数字集:load_digits() - 可在线下载的数据集:sklearn.datasets.fetch_<name> - 计算机生成的数据集:sklearn.datasets.make_<name> - svmlight/libsvm格式的数据集:sklearn.datasets.load_svmlight_file() - 从买了data.org在线下载获取数据集:sklearn.datasets.fetch_mldata() 2. 数据分析 下面将以房价数据为例进行说明这个数据分析过程 2.1 获取数据 import pandas as pd housing = pd.read_csv('./datasets/housing/housing.csv') 2.2 查看列标信息 print

Tomcat多实例配置

↘锁芯ラ 提交于 2021-02-18 06:27:18
1、 解压并部署tomcat程序 如果提前有安装tomcat,先关闭tomcat,在用rm -rf /usr/local/tomcat8/ /web tar xf apache-tomcat-8.5.40.tar.gz mv apache-tomcat-8.5.40/usr/local 2、 创建2个实例的工作目录 3、拷贝tomcat程序目录下的conf目录分别放入2个实例目录中 4、 在tomcat实例目录下的bin 目录中创建实例启动和停止脚本 注意CATALINA_BASE所指向的tomcat实例目录路径 停止脚本 5、 修改每个tomcat实例中server.xml中的端口(分别修改以上三个端口(server port、Connector port、AIP)不要和其他实例的端口或系统已经占用的端口发生冲突 6、 创建测试页 7、启动tomcat实例 8、 查看端口 浏览器 来源: oschina 链接: https://my.oschina.net/u/4408758/blog/3388095

tomcat多端口搭建

我是研究僧i 提交于 2021-02-18 06:23:12
首先po出 https://pan.lanzou.com/i06z9sd 搭建好的tomcat 多端口例子 如有疑问 可参看 最主要的是 conf\service.xml里 多个service的配置 <Service name= "Catalina" > <!--The connectors can use a shared executor, you can define one or more named thread pools--> <!-- <Executor name= "tomcatThreadPool" namePrefix= "catalina-exec-" maxThreads= "150" minSpareThreads= "4" /> --> <!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html (blocking & non-blocking) Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector:

Vue3.0源码解析来一篇

安稳与你 提交于 2021-02-18 06:20:38
Vue.js 3.0 "One Piece" 已经正式发布,相比之前速度更快、体积更小、更易于维护。 与2.0相比, Vue3.0的代码组织更为清晰合理 。在项目的packages目录下分为了好几个模块。比如用于编译模板的 compiler-core模块 ,用于运行时的 runtime-core模块 和 runtime-dom模块, 用于服务端渲染的 server-renderer 模块等等。 当然,一定会有同学问,Vue2.0我已经很精通了,为什么还要学3.0? 首先,Vue3.0的源码中有很多问题的解决方案,如果熟练掌握这些方案,将会更有利于我们今后的工作。 其次,学习Vue3.0能够 提升自己解读源码的能力 , 掌握解读源码的深层规律 , 有利于后期学习其他框架或接手新的项目开发 。 作为一个合格的前端开发程序员,如果你想要更上一个台阶,拿到更高的薪水,学习的速度一定要赶上技术更新的速度。所以,Vue3.0的进阶学习十分必要。 其实从去年下半年Vue.js 3.0的alpha版本出来后,网络上就铺天盖地的出现一些解析源码类的文章,不过大部分文章都浮于表面,能够带来的帮助也十分有限,不能进行深入分析。 而且vue 3.0用了大量的 Reflect/Proxy/Symbol/Map/Set,你需要确保这些api你都了如指掌。 因此,对于拥有vue基础的同学们来说

初识MVC(mvc介绍与基础)Hello Wrold

China☆狼群 提交于 2021-02-18 06:20:24
MVC 全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写 ⦁ 常用主要组件 ⦁ DispatcherServlet:前端控制器 ⦁ Controller:处理器/页面控制器,做的是MVC中的C的事情,但控制逻辑转移到前端控制器了,用于对请求进行处理 ⦁ HandlerMapping :请求映射到处理器,找谁来处理,如果映射成功返回一个HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器对象) ⦁ View Resolver : 视图解析器,找谁来处理返回的页面。把逻辑视图解析为具体的View,进行这种策略模式,很容易更换其他视图技术; ⦁ 如InternalResourceViewResolver将逻辑视图名映射为JSP视图 ⦁ LocalResolver:本地化、国际化 ⦁ MultipartResolver:文件上传解析器 ⦁ HandlerExceptionResolver:异常处理器 1. 配置服务器,如Tomcat 2 新建Web工程,加入 jar 包 spring-aop-4.0.0.RELEASE.jar spring-beans-4.0.0.RELEASE.jar spring-context-4.0

PHP-MVC介绍

。_饼干妹妹 提交于 2021-02-18 06:20:12
1.2 MVC介绍 1、MVC是一个编程思想,是一种设计模式 2、思想:将一个功能分解成3个部分,M V C Model(模型):处理与数据有关的逻辑 View(视图):显示页面 Controller(控制器):处理业务逻辑 小结: 1、控制器用来接收请求 2、以后不能直接请求模型和视图 本文同步分享在 博客“cwl_java”(CSDN)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“ OSC源创计划 ”,欢迎正在阅读的你也加入,一起分享。 来源: oschina 链接: https://my.oschina.net/u/4120230/blog/4797015

Spring MVC介绍

不打扰是莪最后的温柔 提交于 2021-02-18 06:19:59
我们知道MVC是一种经典的模式,把视图、控制器以及数据分开,解耦了各模块之间的关系。 Spring Web MVC是基于 Java 实现的Web MVC 设计模式,是一个请求驱动类型的轻量级Web框架,也就是借助MVC设计模式的思想,将web层进行各个职责模块解耦。基于请求驱动,指的是使用请求-响应模型。框架的目的就是封装接口,简化开发,Spring Web MVC也是要简化日常Web开发。 在 Spring MVC中,前端控制器是DispatcherServlet;应用控制器包括处理器映射器(Handler Mapping)进行处理器管理,以及视图解析器(View Resolver)进行视图管理;页面控制器/处理器为Controller接口(仅包含ModelAndView handleRequest(request, response) 方法)的实现(也可以是任何的POJO类)。 请求具体执行步骤如下: 1、 发送请求————>前端控制器,前端控制器根据请求信息(如URL)来决定选择哪一个页面控制器进行处理,并把请求委托给该控制器; 2、 页面控制器接收到请求后,进行功能处理,绑定请求参数到命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个ModelAndView(模型数据和逻辑视图名); 3、 前端控制器收回控制权,然后根据返回的逻辑视图名

Intellij IDEA 安装Scala插件

时间秒杀一切 提交于 2021-02-18 06:19:39
参考博文 https://blog.csdn.net/m635761952/article/details/83348076 1.打开IntelliJ IDEA的Settings界面 2.查看scala插件版本: 1.选择 Plugins标签 2.输入scala 3.选择Scala 4.点击Install JetBrains plugin 点击后,可以查到需要一个v2018.2.11版本的Scala插件 3.到http://plugins.jetbrains.com/plugin/1347-scala下载一个对应版本的插件。 4.本地安装下载好的插件,然后重启,创建项目便有了Scala 来源: oschina 链接: https://my.oschina.net/u/4383341/blog/3462174

自学QT之实现窗口分割QSplitter的使用

大城市里の小女人 提交于 2021-02-18 06:19:25
首先新建项目,去掉创建界面的选项,开始自己编写。 main.cpp文件的源码如下: #include "mainwindow.h" #include <QApplication> #include <QSplitter> #include <QFont> #include <QTextEdit> int main(int argc, char *argv[]) { QApplication a(argc, argv); QFont font("ZYSong18030",12); a.setFont(font); QSplitter *splitterMain =new QSplitter(Qt::Horizontal,0);//新建一个分割类对象作为分割窗口,设置分割方式为水平 QTextEdit *textLeft=new QTextEdit(QObject::tr("left widget"),splitterMain); textLeft->setAlignment(Qt::AlignCenter); QSplitter *splitterRight =new QSplitter(Qt::Vertical,splitterMain);//右分割窗口,分割方式为垂直 splitterRight->setOpaqueResize(false);//设置实时更新是否可用

c语言排序算法了解

扶醉桌前 提交于 2021-02-18 06:18:44
1)“冒泡法” 冒泡法大家都较熟悉。其原理为从a[0]开始,依次将其和后面的元素比较,若a[0]>a,则交换它们,一直比较到a[n]。同理对a[1],a[2],...a[n-1]处理,即完成排序。下面列出其代码: C/C++ code void bubble(int *a,int n) /*定义两个参数:数组首地址与数组大小*/ { int i,j,temp; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) /*注意循环的上下限*/ if(a>a[j]) { temp=a; a=a[j]; a[j]=temp; } } 冒泡法原理简单,但其缺点是交换次数多,效率低。 下面介绍一种源自冒泡法但更有效率的方法“选择法”。 2)“选择法” 选择法循环过程与冒泡法一致,它还定义了记号k=i,然后依次把a[k]同后面元素比较,若a[k]>a[j],则使k=j.最后看看k=i是否还成立,不成立则交换a[k],a,这样就比冒泡法省下许多无用的交换,提高了效率。 C/C++ code void choise(int *a,int n) { int i,j,k,temp; for(i=0;i<n-1;i++) { k=i; /*给记号赋值*/ for(j=i+1;j<n;j++) if(a[k]>a[j]) k=j; /*是k总是指向最小元素*/ if(i!=k) { /