CPASSOC代码详解
加载环境
library("MASS")
require(MASS)
# Modern Applied Statistics with S,"S"指的是S语言,由贝尔实验室的约翰·钱伯斯(John Chambers)等人开发。S语言是R语言的前身,许多R语言的语法和功能都继承自S语言。
library("Matrix")
# Matrix包提供了用于处理稀疏和密集矩阵的函数。它可以高效地执行线性代数操作,比如计算矩阵的逆、求特征值等
# require(compiler)
# 使用require是因为它并不是必需的。如果你不使用compiler包,代码仍然可以正常运行。使用compiler包的目的是为了通过JIT(Just-In-Time)编译来提高代码的执行速度,特别是在处理大量循环或复杂计算时。
# enableJIT(4)
# 这是compiler的函数。这行代码启用JIT编译器,并设置为最高级别(4),即编译所有代码。这可以显著提高代码的执行速度。
计算未截断的检验分数
Non_Trucated_TestScore <- function(X, SampleSize, CorrMatrix)
{Wi = matrix(SampleSize, nrow = 1);sumW = sqrt(sum(Wi^2));W = Wi / sumW;Sigma = ginv(CorrMatrix);XX = apply(X, 1, function(x) {x1 <- matrix(x, ncol = length(x), nrow = 1); T = W %*% Sigma %*% t(x1);T = (T*T) / (W %*% Sigma %*% t(W));return(T[1,1]);} ); return(XX);
}
SHom <- cmpfun(Non_Trucated_TestScore);
函数参数:
X
: 一个矩阵,表示样本数据。X是一个M×K的矩阵,其中M是SNP的数量,K是要组合的汇总统计量的数量。矩阵的每一列包含一个性状的M个SNP的汇总统计量。如果在一个队列中分析了多个性状,每个性状的汇总统计量将放在一列中。矩阵的每一行代表一个SNP。SampleSize
: 样本大小。SampleSize是一个长度为M的向量,包含了用于获得K个汇总统计量的M个样本量。当前版本假设不同SNP的样本量是相同的。SampleSize用于在组合汇总统计量时作为权重。CorrMatrix
: 相关矩阵。CorrMatrix是X矩阵列之间的相关矩阵,是一个K×K的矩阵,其中K是汇总统计量的数量。。如果X矩阵中没有缺失值,可以通过调用R函数cor(X)来获得CorrMatrix。如果X中有缺失值,可以在删除具有缺失汇总统计量的SNP后以相同方式计算CorrMatrix。对于GWAS数据,这个过程对估计相关矩阵的影响很小。
函数的主要步骤如下:
- 计算权重
W
,并对其进行归一化。 - 计算相关矩阵的广义逆矩阵
Sigma
。 - 对每一行数据
x
进行处理:- 将
x
转换为矩阵x1
。 - 计算检验分数
T
。
- 将
- 返回每一行数据的检验分数。
用公式来表达:
-
计算权重
W
:
W = W i ∑ W i 2 W = \frac{Wi}{\sqrt{\sum Wi^2}} W=∑Wi2Wi -
计算相关矩阵的广义逆矩阵
Sigma
:
Σ = ginv ( CorrMatrix ) \Sigma = \text{ginv}(\text{CorrMatrix}) Σ=ginv(CorrMatrix) -
对每一行数据
x
,计算检验分数T
:
x 1 = matrix ( x , ncol = length ( x ) , nrow = 1 ) x1 = \text{matrix}(x, \text{ncol} = \text{length}(x), \text{nrow} = 1) x1=matrix(x,ncol=length(x),nrow=1)
T = W ⋅ Σ ⋅ x 1 T T = W \cdot \Sigma \cdot x1^T T=W⋅Σ⋅x1T
T = ( T ⋅ T ) W ⋅ Σ ⋅ W T T = \frac{(T \cdot T)}{W \cdot \Sigma \cdot W^T} T=W⋅Σ⋅WT(T⋅T) -
返回每一行数据的检验分数
T[1,1]
。
最终返回所有行的检验分数。
计算截断的检验分数
# X:矩阵,每行表示一个SNP(M),每列表示一个变量(K)
# SampleSize:样本大小向量
# CorrMatrix:相关矩阵
# correct:是否校正权重flag,默认值为1
# startCutoff:截断起始值,默认为0
# endCutoff:截断结束值,默认为1
# CutoffStep:截断步长,默认值为0.05
# isAllpossible:是否使用所有可能的截断值,默认为TRUETrucated_TestScore <- function(X, SampleSize, CorrMatrix, correct = 1, startCutoff = 0, endCutoff = 1, CutoffStep = 0.05, isAllpossible = T)
{N = dim(X)[2];Wi = matrix(SampleSize, nrow = 1);sumW = sqrt(sum(Wi^2));W = Wi / sumW; XX = apply(X, 1, function(x) {TTT = -1;if (isAllpossible == T ) {cutoff = sort(unique(abs(x))); ## it will filter out any of them. } else {cutoff = seq(startCutoff, endCutoff, CutoffStep); }for (threshold in cutoff) {x1 = x;index = which(abs(x1) < threshold);if (length(index) == N) break;A = CorrMatrix;W1 = W; if (length(index) !=0 ) { x1 = x1[-index]; A = A[-index, -index]; ## update the matrixW1 = W[-index]; }if (correct == 1){index = which(x1 < 0);if (length(index) != 0) {W1[index] = -W1[index]; ## update the sign}}A = ginv(A);x1 = matrix(x1, nrow = 1); W1 = matrix(W1, nrow = 1);T = W1 %*% A %*% t(x1);T = (T*T) / (W1 %*% A %*% t(W1));if (TTT < T[1,1]) TTT = T[1,1]; }return(TTT);} ); return(XX);
}
SHet <- cmpfun(Trucated_TestScore);
函数参数:
X
: 一个矩阵,表示样本数据。SampleSize
: 样本大小。CorrMatrix
: 相关矩阵。correct
: 一个布尔值,默认为1,表示是否需要修正符号。startCutoff
: 截断的起始值,默认为0。endCutoff
: 截断的结束值,默认为1。CutoffStep
: 截断步长,默认为0.05。isAllpossible
: 一个布尔值,默认为T
,表示是否使用所有可能的截断值。
函数的主要步骤如下:
- 计算权重
W
,并对其进行归一化。 - 对每一行数据
x
进行处理:- 如果
isAllpossible
为T
,则计算所有可能的截断值cutoff
。 - 否则,生成从
startCutoff
到endCutoff
的序列作为截断值。
- 如果
- 对每一个截断值
threshold
:- 更新数据
x1
和相关矩阵A
,去除小于threshold
的元素。 - 如果
correct
为1,修正符号。 - 计算截断检验分数
T
,并更新最大值TTT
。
- 更新数据
- 返回每一行数据的最大截断检验分数。
用公式来表达:
-
计算权重
W
:
W = W i ∑ W i 2 W = \frac{Wi}{\sqrt{\sum Wi^2}} W=∑Wi2Wi -
对每一行数据
x
,计算截断值cutoff
:
cutoff = { sort(unique(abs(x))) if isAllpossible = T seq(startCutoff, endCutoff, CutoffStep) otherwise \text{cutoff} = \begin{cases} \text{sort(unique(abs(x)))} & \text{if } \text{isAllpossible} = T \\ \text{seq(startCutoff, endCutoff, CutoffStep)} & \text{otherwise} \end{cases} cutoff={sort(unique(abs(x)))seq(startCutoff, endCutoff, CutoffStep)if isAllpossible=Totherwise -
对每一个截断值
threshold
,更新数据x1
和相关矩阵A
:
x 1 = x (remove elements where ∣ x 1 ∣ < threshold ) x1 = x \quad \text{(remove elements where } |x1| < \text{threshold}) x1=x(remove elements where ∣x1∣<threshold)
A = CorrMatrix (remove corresponding rows and columns) A = \text{CorrMatrix} \quad \text{(remove corresponding rows and columns)} A=CorrMatrix(remove corresponding rows and columns)
W 1 = W (remove corresponding elements) W1 = W \quad \text{(remove corresponding elements)} W1=W(remove corresponding elements) -
如果
correct
为1,修正符号:
W 1 [ index ] = − W 1 [ index ] (where x 1 < 0 ) W1[\text{index}] = -W1[\text{index}] \quad \text{(where } x1 < 0) W1[index]=−W1[index](where x1<0) -
计算截断检验分数
T
:
A = ginv ( A ) A = \text{ginv}(A) A=ginv(A)
x 1 = matrix ( x 1 , n r o w = 1 ) x1 = \text{matrix}(x1, nrow = 1) x1=matrix(x1,nrow=1)
W 1 = matrix ( W 1 , n r o w = 1 ) W1 = \text{matrix}(W1, nrow = 1) W1=matrix(W1,nrow=1)
T = ( W 1 ⋅ A ⋅ x 1 T ) 2 W 1 ⋅ A ⋅ W 1 T T = \frac{(W1 \cdot A \cdot x1^T)^2}{W1 \cdot A \cdot W1^T} T=W1⋅A⋅W1T(W1⋅A⋅x1T)2 -
返回每一行数据的最大截断检验分数
TTT
:
T T T = max ( T ) TTT = \max(T) TTT=max(T)
最终返回所有行的最大截断检验分数。
估计Gamma分布的参数
EstimateGamma <- function (N = 1E6, SampleSize, CorrMatrix, correct = 1, startCutoff = 0, endCutoff = 1, CutoffStep = 0.05, isAllpossible = T) {Wi = matrix(SampleSize, nrow = 1); sumW = sqrt(sum(Wi^2));W = Wi / sumW;Permutation = mvrnorm(n = N, mu = c(rep(0, length(SampleSize))), Sigma = CorrMatrix, tol = 1e-8, empirical = F);Stat = Trucated_TestScore(X = Permutation, SampleSize = SampleSize, CorrMatrix = CorrMatrix, correct = correct, startCutoff = startCutoff, endCutoff = endCutoff, CutoffStep = CutoffStep, isAllpossible = isAllpossible);a = min(Stat)*3/4ex3 = mean(Stat*Stat*Stat)V = var(Stat);for (i in 1:100){E = mean(Stat)-a;k = E^2/Vtheta = V/Ea = (-3*k*(k+1)*theta**2+sqrt(9*k**2*(k+1)**2*theta**4-12*k*theta*(k*(k+1)*(k+2)*theta**3-ex3)))/6/k/theta}para = c(k,theta,a);return(para);
}
函数参数:
N
: 生成的样本数量,默认为1E6。SampleSize
: 样本大小。CorrMatrix
: 相关矩阵。correct
: 一个布尔值,默认为1,表示是否需要修正符号。startCutoff
: 截断的起始值,默认为0。endCutoff
: 截断的结束值,默认为1。CutoffStep
: 截断步长,默认为0.05。isAllpossible
: 一个布尔值,默认为T
,表示是否使用所有可能的截断值。
函数的主要步骤如下:
- 计算权重
W
,并对其进行归一化。 - 生成
N
个服从多元正态分布的随机样本Permutation
。 - 使用
Trucated_TestScore
函数计算截断检验分数Stat
。 - 计算初始参数
a
、ex3
和V
。 - 通过迭代更新参数
a
,并计算Gamma分布的参数k
和theta
。 - 返回参数
k
、theta
和a
。
用公式来表达:
-
计算权重
W
:
W = W i ∑ W i 2 W = \frac{Wi}{\sqrt{\sum Wi^2}} W=∑Wi2Wi -
生成
N
个服从多元正态分布的随机样本Permutation
:
Permutation = mvrnorm ( n = N , μ = 0 , Σ = CorrMatrix ) \text{Permutation} = \text{mvrnorm}(n = N, \mu = \mathbf{0}, \Sigma = \text{CorrMatrix}) Permutation=mvrnorm(n=N,μ=0,Σ=CorrMatrix) -
使用
Trucated_TestScore
函数计算截断检验分数Stat
:
Stat = Trucated_TestScore ( X = Permutation , SampleSize = SampleSize , CorrMatrix = CorrMatrix , correct = correct , startCutoff = startCutoff , endCutoff = endCutoff , CutoffStep = CutoffStep , isAllpossible = isAllpossible ) \text{Stat} = \text{Trucated\_TestScore}(X = \text{Permutation}, \text{SampleSize} = \text{SampleSize}, \text{CorrMatrix} = \text{CorrMatrix}, \text{correct} = \text{correct}, \text{startCutoff} = \text{startCutoff}, \text{endCutoff} = \text{endCutoff}, \text{CutoffStep} = \text{CutoffStep}, \text{isAllpossible} = \text{isAllpossible}) Stat=Trucated_TestScore(X=Permutation,SampleSize=SampleSize,CorrMatrix=CorrMatrix,correct=correct,startCutoff=startCutoff,endCutoff=endCutoff,CutoffStep=CutoffStep,isAllpossible=isAllpossible) -
计算初始参数
a
、ex3
和V
:
a = 3 4 min ( Stat ) a = \frac{3}{4} \min(\text{Stat}) a=43min(Stat)
ex3 = mean ( Stat 3 ) \text{ex3} = \text{mean}(\text{Stat}^3) ex3=mean(Stat3)
V = var ( Stat ) V = \text{var}(\text{Stat}) V=var(Stat) -
通过迭代更新参数
a
,并计算Gamma分布的参数k
和theta
:
for i in 1 : 100 do \text{for } i \text{ in } 1:100 \text{ do} for i in 1:100 do
E = mean ( Stat ) − a E = \text{mean}(\text{Stat}) - a E=mean(Stat)−a
k = E 2 V k = \frac{E^2}{V} k=VE2
θ = V E \theta = \frac{V}{E} θ=EV
a = − 3 k ( k + 1 ) θ 2 + 9 k 2 ( k + 1 ) 2 θ 4 − 12 k θ ( k ( k + 1 ) ( k + 2 ) θ 3 − ex3 ) 6 k θ a = \frac{-3k(k+1)\theta^2 + \sqrt{9k^2(k+1)^2\theta^4 - 12k\theta(k(k+1)(k+2)\theta^3 - \text{ex3})}}{6k\theta} a=6kθ−3k(k+1)θ2+9k2(k+1)2θ4−12kθ(k(k+1)(k+2)θ3−ex3) -
返回参数
k
、theta
和a
:
para = ( k , θ , a ) \text{para} = (k, \theta, a) para=(k,θ,a)
最终返回所有行的检验分数。
计算经验分布
# N:模拟次数,默认值为1E6,即100,000
# 其它参数与 Trucated_TestScore 相同EmpDist <- function (N = 1E6, SampleSize, CorrMatrix, correct = 1, startCutoff = 0, endCutoff = 1, CutoffStep = 0.05, isAllpossible = T) {Wi = matrix(SampleSize, nrow = 1); sumW = sqrt(sum(Wi^2));W = Wi / sumW;Permutation = mvrnorm(n = N, mu = c(rep(0, length(SampleSize))), Sigma = CorrMatrix, tol = 1e-8, empirical = F);Stat = Trucated_TestScore(X = Permutation, SampleSize = SampleSize, CorrMatrix = CorrMatrix, correct = correct, startCutoff = startCutoff, endCutoff = endCutoff, CutoffStep = CutoffStep, isAllpossible = isAllpossible);return(Stat);
}
函数参数:
N
: 生成的样本数量,默认为1,000,000。SampleSize
: 样本大小。CorrMatrix
: 相关矩阵。correct
: 一个布尔值,默认为1,表示是否需要修正符号。startCutoff
: 截断的起始值,默认为0。endCutoff
: 截断的结束值,默认为1。CutoffStep
: 截断步长,默认为0.05。isAllpossible
: 一个布尔值,默认为T
,表示是否使用所有可能的截断值。
函数的主要步骤如下:
- 计算权重
W
,并对其进行归一化。 - 使用多元正态分布生成
N
个样本,均值为0,协方差矩阵为CorrMatrix
。 - 调用
Trucated_TestScore
函数计算截断检验分数。 - 返回计算得到的统计量
Stat
。
用公式来表达:
-
计算权重
W
:
W = W i ∑ W i 2 W = \frac{Wi}{\sqrt{\sum Wi^2}} W=∑Wi2Wi -
使用多元正态分布生成
N
个样本:
Permutation = mvrnorm ( n = N , μ = 0 , Σ = CorrMatrix ) \text{Permutation} = \text{mvrnorm}(n = N, \mu = \mathbf{0}, \Sigma = \text{CorrMatrix}) Permutation=mvrnorm(n=N,μ=0,Σ=CorrMatrix) -
调用
Trucated_TestScore
函数计算截断检验分数:
Stat = Trucated_TestScore ( X = Permutation , SampleSize = SampleSize , CorrMatrix = CorrMatrix , correct = correct , startCutoff = startCutoff , endCutoff = endCutoff , CutoffStep = CutoffStep , isAllpossible = isAllpossible ) \text{Stat} = \text{Trucated\_TestScore}(X = \text{Permutation}, \text{SampleSize} = \text{SampleSize}, \text{CorrMatrix} = \text{CorrMatrix}, \text{correct} = \text{correct}, \text{startCutoff} = \text{startCutoff}, \text{endCutoff} = \text{endCutoff}, \text{CutoffStep} = \text{CutoffStep}, \text{isAllpossible} = \text{isAllpossible}) Stat=Trucated_TestScore(X=Permutation,SampleSize=SampleSize,CorrMatrix=CorrMatrix,correct=correct,startCutoff=startCutoff,endCutoff=endCutoff,CutoffStep=CutoffStep,isAllpossible=isAllpossible) -
返回统计量
Stat
。
相关文章:
CPASSOC代码详解
加载环境 library("MASS") require(MASS) # Modern Applied Statistics with S,"S"指的是S语言,由贝尔实验室的约翰钱伯斯(John Chambers)等人开发。S语言是R语言的前身,许多R语言的语法和功能都…...
dirfuzz-web敏感目录文件扫描工具
dirfuzz介绍 dirfuzz是一款基于Python3的敏感目录文件扫描工具,借鉴了dirsearch的思路,扬长避短。在根据自身实战经验的基础上而编写的一款工具,经过断断续续几个月的测试、修改和完善。 项目地址:https://github.com/ssrc-c/di…...
计算机发展史 | 从起源到现代技术的演进
computer | Evolution from origins to modern technology 今天没有参考资料哈哈 PPT:(评论区?) 早期计算工具 算盘 -算盘是一种手动操作的计算辅助工具,起源于中国,迄今已有2600多年的历史,是…...
45-3 护网溯源 - 为什么要做溯源工作
官网:CVERC-国家计算机病毒应急处理中心 西工大遭网络攻击再曝细节!13名攻击者身份查明→ (baidu.com) 护网溯源是指通过技术手段追踪网络攻击的来源和行为,其重要性体现在以下几个方面: 安全防御:了解攻击源头可以帮助组织加强网络安全防御,及时采取措施防止攻击的再次…...
【JavaEE 进阶(二)】Spring MVC(下)
❣博主主页: 33的博客❣ ▶️文章专栏分类:JavaEE◀️ 🚚我的代码仓库: 33的代码仓库🚚 🫵🫵🫵关注我带你了解更多进阶知识 目录 1.前言2.响应2.1返回静态界面2.2返回数据2.3返回HTML代码 3.综合练习3.1计算器3.2用户登…...
光波长 深入程度
UV深入程度(UVC, UVB, UVA)https://mp.weixin.qq.com/s?__bizMzkwNTM0Njk3MA&mid2247483934&idx1&sn92d1ba67ead404e7714af11ec0526786&chksmc0f868ebf78fe1fd0610493e6f49a5d90835a20a829a900746906cda12f2fa12…...
MySQL数据库常见工具的基础使用_1
在上一篇文章中提到了对MySQL数据库进行操作的一些常见工具 mysqlcheck mysqlcheck是一个用于数据库表的检查,修复,分析和优化的一个客户端程序 分析的作用是查看表的关键字分布,能够让sql生成正确的执行计划(支持InnoDB,MyISAM,NDB)检查的作用是检查…...
C语言中指针的说明
什么是指针? 在C语言当中,我们可以将指针理解为内存当中存储的地址,就像生活当中,一个小区里面,在小区里面有很单元,每一栋单元,单元内的房间有着不同的房间号,我们可以同过几栋几单…...
webrtc vp8/9视频编解码介绍
文章目录 一、libvpx项目介绍libvpx基本概念编码器使用流程解码器使用流程示例代码:官方文档和资源二、VP8/9在WebRTC中的应用2.1 VP82.2 VP92.3如何选择哪种编码方式2.4 vp9编码的主要步骤2.5 vp9解码C++代码示例注意事项三、webrtc在音视频传输中是怎样选择vp8还是vp9<...
【机器学习300问】107、自然语言处理(NLP)领域有哪些子任务?
自然语言处理(NLP)是计算机科学、人工智能和语言学领域的一个交叉学科,致力于让计算机能够理解、解析、生成和与人类的自然语言进行互动。自然语言指的是人们日常交流使用的语言,如英语、汉语等,与计算机编程语言相对。…...
面试被问准备多久要孩子?这样回答
听说有人面试被问到多久要孩子的问题,当时觉得很尴尬,不知如何回答,怕回答的不好不被录用,其实你可以这样回答,让面试官心满意足。 A 面试官:结婚了吗? 我:结婚了 面试官࿱…...
HCIP-Datacom-ARST自选题库__多种协议简答【11道题】
1.BGP/MPLSIP VPN的典型组网场景如图所示,PE1和PE2通过LoopbackO建立MP-IBGP,PE1和PE2之间只传递VPN路由,其中PE1BGP进程的部分配置已在图中标出,则编号为0的命令不是必须的。(填写阿拉伯数字) 3 2.在如图所示的Hub&Spok…...
C# 泛型函数
1.非约束 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyGeneirc {public class GeneircMethod{/// <summary>/// 泛型方法解决,一个方法,满足不同参数类型…...
C# Onnx E2Pose人体关键点检测
C# Onnx E2Pose人体关键点检测 目录 效果 模型信息 项目 代码 下载 效果 模型信息 Inputs ------------------------- name:inputimg tensor:Float[1, 3, 512, 512] --------------------------------------------------------------- Outputs ---…...
YOLO10:手把手安装教程与使用说明
目录 前言一、YOLO10检测模型二、YOLO安装过程1.新建conda的环境 yolo10安装依赖包测试 总结 前言 v9还没整明白,v10又来了。而且还是打败天下无敌手的存在,连最近很火的RT-DETR都被打败了。那么,笑傲目标检测之林的v10又能持续多久呢&#…...
EasyRecovery2024永久免费crack激活码注册码
在数字化时代,数据已经成为我们生活和工作中不可或缺的一部分。无论是个人用户还是企业用户,都面临着数据丢失的风险。一旦数据丢失,可能会给我们的工作带来极大的不便,甚至可能对企业造成重大损失。因此,数据安全和恢…...
Linux Centos内网环境中安装mysql5.7详细安装过程
一、下载安装包 下载地址(可下载历史版本): https://downloads.mysql.com/archives/community 二、解压到安装路径 tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz三、重命名 mv /usr/local/mysql-5.7.20-linux-glibc2.12-x86_64 …...
新字符设备驱动实验学习
register_chrdev 和 unregister_chrdev 这两个函数是老版本驱动使用的函数,现在新的字符设备驱动已经不再使用这两个函数,而是使用Linux内核推荐的新字符设备驱动API函数。新字符设别驱动API函数在驱动模块加载的时候自动创建设备节点文件。 分配和释放…...
篇1:Mapbox Style Specification
目录 引言 地图创建与样式加载 Spec Reference Root sources type:vector矢量瓦片...
实时监控与报警:人员跌倒检测算法的实践
在全球范围内,跌倒事件对老年人和儿童的健康与安全构成了重大威胁。据统计,跌倒是老年人意外伤害和死亡的主要原因之一。开发人员跌倒检测算法的目的是通过技术手段及时发现和响应跌倒事件,减少因延迟救助而造成的严重后果。这不仅对老年人群…...
LeetCode25_K个一组翻转链表
. - 力扣(LeetCode) 一、题目描述 二、过程模拟 1. 第一步 2. 第二步:子链表分组 3. 第三步:断开前后两组 4. 第四步:翻转start到end的部分 5. 第五步:连接翻转好的前半部分和未翻转的后半部分ÿ…...
电脑突然提示:“failed to load steamui.dll”是什么情况?分享几种解决steamui.dll丢失的方法
相信有一些用户正在面临一个叫做“failed to load steamui.dll”的问题,这种情况多半发生在试图运行某个程序时,系统会提示一条错误消息:“failed to load steamui.dll”。那么,为何steamui.dll文件会丢失,又应该如何解…...
【vue实战项目】通用管理系统:作业列表
目录 目录 1.前言 2.后端API 3.前端API 4.组件 5.分页 6.封装组件 1.前言 本文是博主前端Vue实战系列中的一篇文章,本系列将会带大家一起从0开始一步步完整的做完一个小项目,让你找到Vue实战的技巧和感觉。 专栏地址: https://blog…...
Scikit-Learn随机森林回归
Scikit-Learn随机森林回归 1、随机森林1.1、集成学习1.2、Bagging方法1.3、随机森林算法1.4、随机森林的优缺点2、Scikit-Learn随机森林回归2.1、Scikit-Learn随机森林回归API2.2、随机森林回归实践(加州房价预测)1、随机森林 随机森林是一种由决策树构成的集成算法,它在大多…...
Vue Router 教程
Vue Router 是 Vue.js 的官方路由管理器,它提供了一种方便的方式来管理应用的路由。在本教程中,我们将介绍 Vue Router 的一些常见用法和示例。 一、安装 Vue Router 使用 Vue Router 之前,需要先安装它。可以使用以下命令通过 npm 安装&am…...
【数据库】SQL--DQL(初阶)
文章目录 DCL1. 基本介绍2. 语法2.1 基础查询2.2 条件查询2.3 聚合函数2.4 聚合查询2.5 分组查询2.6 排序查询2.7 分页查询2.8 综合案例练习2.9 执行顺序 3. DQL总结 DCL 更多数据库MySQL系统内容就在以下专栏: 专栏链接:数据库MySQL 1. 基本介绍 DQL英…...
【docker】docker的安装
如果之前安装了旧版本的docker我们需要进行卸载: 卸载之前的旧版本 卸载 # 卸载旧版本 sudo apt-get remove docker docker-engine docker.io containerd runc # 卸载历史版本 apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker…...
OC IOS 文件解压缩预览
热很。。热很。。。。夏天的城市只有热浪没有情怀。。。 来吧,come on。。。 引用第三方库: pod SSZipArchive 开发实现: 一、控制器实现 头文件控制器定义: // // ZipRarViewController.h // // Created by carbonzhao on 2…...
python-web应用程序-Django-From组件
python-web应用程序-Django-From组件 添加用户时 原始方法(本质)【麻烦】 def user_add(req):if req.method GET:return render(req,XXX.html)#POST请求处理:XXXXX-用户数据没有校验 -出现错误提示 -页面上的每一个字段都需要我们重新写一遍 -关联数…...
K8s(Kubernetes)常用命令
大家好,当谈及容器编排工具时,Kubernetes(常简称为K8s)无疑是当今最受欢迎和广泛使用的解决方案之一。作为一个开源的容器编排平台,Kubernetes 提供了丰富的功能,可以帮助开发人员和运维团队管理、部署和扩…...
wordpress 转织梦/上海专业优化排名工具
简介:MySQL的二进制日志可以说或是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是失误安全型的.MySQL的二进制日志的作用是显而易见的,可以方便的备份这些日志以便…...
网站建立数据库/茂名seo快速排名外包
public class DoubleClick : MonoBehaviour {float timelost 0;void Update(){if (Input.GetKeyDown(KeyCode.D)){if (Time.time - timelost < 0.5f)///0.5秒之内按下有效{/}timelost Time.time;}} }从游戏开始到到现在所用的时间(只读)。 Time.tim…...
手机微网站怎么做/武汉百度开户代理
在写web页面时,标签 是很常见的元素,它的一个属性是action,用来标识将表单交给谁去处理。很显然,这里有一个地址的问题,而且是在服务器这边的地址。比如服务器内的一个servlet。 那么这个地址怎么写?1.以&q…...
广告网站怎么做的/培训心得体会2000字
http://jingyan.baidu.com/article/ed15cb1b1e483a1be3698112.html http://jingyan.baidu.com/article/3f16e003bc653c2590c1035d.html转载于:https://www.cnblogs.com/zhouxiansheng/p/4357877.html...
网站建设学习什么/关键词优化快排
优化InnoDB查询要调整InnoDB表查询,请在每个表上创建一组适当的索引。有关详细信息,请参见 第8.3.1节“ MySQL如何使用索引”。请遵循以下InnoDB索引准则:1、因为每个InnoDB表都有一个 主键(无论您是否请求一个主键),所以请为每个…...
珠海企业网站建站/一句吸引人的广告语
最小生成树Kruskal裸题 康复训练ing 值得一提地是 用getchar() 一直在RE 最后换成了cin 才A掉 #include <iostream> #include <cstdio> #include <cstring> #include <queue> #include <algorithm> using namespace std;#define MAX_V (30) #d…...