broom系列包: 整理模型输出结果
broom包
说明
tidy、augment和glance函数的输出总是一个小tibble。
输出从来没有行名。这确保了您可以将它与其他整洁的输出组合在一起,而不用担心丢失信息(因为R中的行名不能包含重复)。
有些列名保持一致,这样它们就可以跨不同的模型进行组合。
tidy()
输出中的每一行通常代表一些定义良好的概念,例如回归中的一个术语、一个测试或一个集群/类。
常见的列名包括:
- term: 被估计的回归或模型中的名称
- p.value: 为了与R的内置统计包中的函数保持一致,选择了这个拼写(而不是常见的替代方法,如pvalue、pvalue或pval)
- statistic: 统计量一种检验统计量,通常用于计算p值。在许多亚组中结合这些是进行(例如)自助假设检验的可靠方法估计
conf.low:
估计值的置信区间下限conf.high:
估计值的置信区间上限- df:自由度
augment()
augment(model, data) 向原始数据添加列。
如果数据参数缺失,则从模型重构数据的 augment 尝试(注意,这可能并不总是可行的,并且通常不会包含模型中未使用的列)。
augment() 输出中的每一行都与原始数据中的相应行匹配。
如果原始数据包含行名,则augment()将它们转换为名为.rownames的列以避免覆盖原始数据
常见的列名包括:
.fitted
: 预测值,与数据在同一尺度上。.resid
: 残差实际y值减去拟合值- .cluster:集群分配
glance()
glance()总是返回一个单行tibble。
唯一的例外是glance(NULL)返回一个空tibble。
我们避免包含给建模函数的参数。例如,glm glance输出不需要包含family字段,因为这是由用户调用glm而不是建模函数本身决定的。
常见的列名包括:
- r.squared: 由模型解释的方差分数
- adj.r.squared: 根据自由度调整的平方R2
- sigma: 残差估计方差的平方根
broom.mixed包
函数解释
各类模型能够调用的函数
class | tidy | glance | augment |
allFit | TRUE | TRUE | FALSE |
brmsfit | TRUE | TRUE | TRUE |
gamlss | TRUE | TRUE | FALSE |
gamm4 | TRUE | TRUE | TRUE |
glmmadmb | TRUE | TRUE | TRUE |
glmmTMB | TRUE | TRUE | TRUE |
gls | TRUE | TRUE | TRUE |
lme | TRUE | TRUE | TRUE |
lmList4 | TRUE | FALSE | FALSE |
mcmc | TRUE | FALSE | FALSE |
mcmc.list | TRUE | FALSE | FALSE |
MCMCglmm | TRUE | FALSE | FALSE |
merMod | TRUE | TRUE | TRUE |
MixMod | TRUE | FALSE | FALSE |
ranef.mer | FALSE | FALSE | TRUE |
rjags | TRUE | FALSE | FALSE |
rlmerMod | TRUE | FALSE | FALSE |
stanfit | TRUE | FALSE | FALSE |
stanreg | TRUE | TRUE | FALSE |
TMB | TRUE | FALSE | FALSE |
varComb | TRUE | FALSE | FALSE |
varFunc | TRUE | FALSE | FALSE |
broom.helper包
功能:整理数据+绘制森林图
结果输出的每列需要调用的函数
Column 列 | Function 功能 | Description 描述 |
original_term | tidy_disambiguate_terms(), tidy_multgee() or tidy_zeroinfl() | Original term before disambiguation. This columns is added only when disambiguation is needed (i.e. for mixed models). Also used for “multgee”, “zeroinfl” and “hurdle” models. 消歧前的原始术语。只有在需要消除歧义时(例如,对于混合模型)才添加此列。也用于“ multgee”,“ zeroinfl”和“ hurdle”模型。 |
variable | tidy_identify_variables() | String of variable names from the model. For categorical variables and polynomial terms defined with stats::poly(), terms belonging to the variable are identified. 模型中的变量名字符串。对于分类变量和多项式术语定义的统计: : 聚() ,属于变量的术语被识别。 |
var_class | tidy_identify_variables() | Class of the variable. 变量的类。 |
var_type | tidy_identify_variables() | One of “intercept”, “continuous”, “dichotomous”, “categorical”, “interaction”, “ran_pars” or “ran_vals” “拦截”、“连续”、“二分法”、“范畴”、“互动”、“运行”或“运行”之一 |
var_nlevels | tidy_identify_variables() | Number of original levels for categorical variables 分类变量的原始级数 |
contrasts | tidy_add_contrasts() () | Contrasts used for categorical variables. 对比用于分类变量。需要“变量”列。如果需要,将自动应用整齐 _ 标识 _ 变量()。 |
contrasts_type | tidy_add_contrasts() () | Type of contrasts (“treatment”, “sum”, “poly”, “helmert”, “sdif”, “other” or “no.contrast”). “pairwise is used for pairwise contrasts computed with tidy_add_pairwise_contrasts(). 对比的类型(“处理”,“总和”,“多边形”,“赫尔默特”,“ sdif”,“其他”或“不对比”)。“成对对比用于成对对比,用于计算整齐的tidy_add_pairwise_contrasts() |
reference_row | tidy_add_reference_rows() () | Logical indicating if a row is a reference row for categorical variables using a treatment or a sum contrast. Is equal to NA for variables who do not have a reference row. 使用处理或和对比表示行是否为分类变量的引用行的逻辑。等于没有引用行的变量的 NA。需要“对比度”列。如果需要,将自动应用 tidy_add_contrasts()。tidy_add_reference_rows() 将不会填充引用术语的标签。因此,在tidy_add_term_labels()之后应用 tidy_add_reference_rows()比之前更好。 |
var_label | tidy_add_variable_labels() | String of variable labels from the model. Columns labelled with the labelled package are retained. It is possible to pass a custom label for an interaction term with the labels argument. 模型中的变量标签字符串。保留标有标签的包装的栏。可以为带有 label 参数的交互项传递自定义标签。需要“变量”列。如果需要的话,将自动应用奖励的整齐 _ 标识 _ 变量()。 |
label 标签 | tidy_add_term_labels() () | String of term labels based on (1) labels provided in labels argument if provided; (2) factor levels for categorical variables coded with treatment, SAS or sum contrasts; (3) variable labels when there is only one term per variable; and (4) term name otherwise. 基于(1)标签参数中提供的标签的术语标签串; (2)用处理、 SAS 或和对比编码的分类变量的因子水平; (3)每个变量只有一个术语时的变量标签; 以及(4)其他术语名称。需要“ variable _ label”列。如果需要,将自动应用 tidy_add_variable_labels().。需要“对比度”列。如果需要,将自动应用tidy_add_contrasts(). |
header_row | tidy_add_header_rows() () | Logical indicating if a row is a header row for variables with several terms. Is equal to NA for variables who do not have an header row.Require “label” column. If needed, will automatically apply tidy_add_term_labels(). 逻辑指示一行是否为具有多个术语的变量的标题行。等于没有标题行的变量的 NA。需要“标签”列。如果需要,将自动应用 tidy_add_term_labels()。最好是在其他tidy_* 函数之后应用 tidy_add_header_rows() |
n_obs | tidy_add_n() () | Number of observations 观察次数 |
n_event | tidy_add_n() () | Number of events (for binomial and multinomial logistic models, Poisson and Cox models) 事件数(二项式和多项式逻辑模型,泊松和考克斯模型) |
exposure | tidy_add_n() () | Exposure time (for Poisson and Cox models) 暴露时间(泊松和考克斯模型) Add the (weighted) number of observations — tidy_add_n • broom.helpers (larmarange.github.io) |
各类属性调整时,需要调用的函数
Attribute 属性 | Function 函数 | Description 功能 | ||
exponentiate | tidy_and_attach | 估计是否为指数形式 | Estimates were exponentiated | |
conf.level | tidy_and_attach | 置信区间的置信度 | Level of confidence for confidence intervals | |
coefficients_type | tidy_add_coefficients_type | 系数类型 | Type of coefficients | |
coefficients_label | tidy_add_coefficients_type | 系数标签 | Coefficients label | |
variable_labels | tidy_add_variable_labels | 将自定义变量标签传递给 tidy_add_variable_labels | Custom variable labels passed to tidy_add_variable_labels | |
term_labels | tidy_add_term_labels | 将自定义术语标签传递给tidy_add_term_labels | Custom term labels passed to tidy_add_term_labels | |
N_obs | tidy_add_n | 观测总数 | Total number of observations | |
N_event | tidy_add_n | 事件总数 | Total number of events | |
Exposure | tidy_add_n | 总暴露时间 | Total of exposure time | |
component | tidy_zeroinfl | 参数传递到tidy_zeroinfl() | component argument passed to tidy_zeroinfl() |
支持这些模型的模型整理任务
-
回归模型
-
所有模型汇总
betareg::betareg()、biglm::bigglm()、biglmm::bigglm()、brms::brm()、fixest::feglm()、fixest::femlm()、fixest::feNmlm()、fixest::feols()、glmmTMB::glmmTMB()、gam::gam()、geepack::geeglm()、logitr::logitr()、MASS::glm.nb()、MASS::polr()、mgcv::gam()、mice::mira()、mmrm::mmrm()、nnet::multinom()、ordinal::clm()、ordinal::clmm()、rstanarm::stan_glm()、stats::glm()、plm::plm()、stats::lm()、stats::nls()
-
Beta Regression 模型(Beta 回归模型)
betareg::betareg()
: Beta 回归模型是一种用于处理介于 0 和 1 之间的连续百分比或概率型数据的回归模型。它适合模拟遵循 Beta 分布的数据。
-
Generalized Linear Model(广义线性模型)
stats::glm()
: 广义线性模型适用于探索因变量和自变量之间的关系,可根据因变量的分布选择不同的链接函数。MASS::glm.nb()
: 负二项广义线性模型,用于处理计数型数据,适合模拟计数数据的过度离散性。MASS::polr()
: 有序 logistic 回归模型,用于处理有序分类数据。
-
Generalized Additive Model(广义加性模型)
gam::gam()
: 广义加性模型通过非参数函数来拟合数据的非线性关系,适合处理复杂数据结构。mgcv::gam()
: 广义加性模型的具体实现,用于拟合非线性样条函数,可以处理连续和分类预测变量。
-
Mixed Effects Model(混合效应模型)
biglm::bigglm()
和biglmm::bigglm()
: 用于大数据集的广义线性混合效应模型,适合应对大规模数据的建模需求。brms::brm()
: 贝叶斯混合效应模型,用于探究固定效应和随机效应在数据中的作用。
-
Fixed Effects Model(固定效应模型)
fixest::feglm()
,fixest::femlm()
,fixest::feNmlm()
,fixest::feols()
: 固定效应模型用于处理面板数据,通过固定效应消除个体间的异质性。
-
Generalized Estimating Equations(广义估计方程)
geepack::geeglm()
: 广义估计方程模型,用于处理相关数据和重复测量数据,适合考虑数据相关性的分析。
-
Generalized Additive Mixed Model(广义加性混合模型)
glmmTMB::glmmTMB()
: 广义加性混合模型,结合了非线性关系和随机效应的建模方法。
-
Logistic Regression(逻辑回归模型)
logitr::logitr()
: 逻辑回归模型适用于二分类或多分类问题的建模和预测。nnet::multinom()
: 多项 logistic 回归模型,用于多分类问题的建模和预测。
-
Ordinal Regression(有序回归模型)
-
ordinal::clm()
,ordinal::clmm()
: 有序回归模型适用于有序分类数据的建模和预测。
-
-
Survival Analysis(生存分析模型)
rstanarm::stan_glm()
: 基于 Stan 的生存分析模型,用于处理具有时间到事件或失败的数据。
-
Panel Data Models(面板数据模型)
plm::plm()
: 面板数据模型适用于分析面板数据,可以考虑固定效应和随机效应。
-
Linear Regression(线性回归模型)
stats::lm()
: 线性回归模型,用于研究自变量和因变量之间的线性关系。
-
Nonlinear Regression Model(非线性回归模型)
stats::nls()
: 非线性最小二乘回归模型,适合拟合非线性关系的数据。
-
Missing Data Imputation Models(缺失数据插补模型)
mice::mira()
: 用于缺失数据插补的多重插补方法。
-
Repeated Measures ANOVA Models(重复测量 ANOVA 模型)
mmrm::mmrm()
: 用于处理重复测量设计的混合模型。
-
-
生存分析
-
所有模型汇总
cmprsk::crr()
、survival::cch()
、survival::clogit()
、survival::coxph()
、survival::survreg()
、survey::svycoxph()
、survey::svyglm()
、survey::svyolr()
、tidycmprsk::crr()
-
Cox Proportional Hazards Model(Cox 比例风险模型)
survival::coxph()
: Cox 比例风险模型是一种常用的生存分析方法,用于研究自变量对风险函数比例的影响。
-
Accelerated Failure Time Model(加速失效时间模型)
survival::survreg()
: 加速失效时间模型是生存分析的另一种方法,用于研究生存时间的分布和影响因素。
-
Competing Risks Regression Model(竞争风险回归模型)
cmprsk::crr()
: 竞争风险回归模型用于处理存在竞争事件的生存数据,考虑了不同类型风险之间的相互影响。
-
Conditional Logistic Regression Model(条件 logistic 回归模型)
survival::clogit()
: 条件 logistic 回归模型适用于研究匹配案例-对照的生存数据,用于探究协变量与事件发生之间的关系。
-
Proportional Hazards Regression (比例风险回归模型)
survival::cch()
: proportional hazards regression model to case-cohort data 病例队列数据的比例风险回归模型
-
Survey-weighted Cox Proportional Hazards Model(加权调查 Cox 比例风险模型)
survey::svycoxph()
: 加权调查 Cox 比例风险模型用于处理调查样本中的生存数据,考虑了复杂调查设计所带来的权重。
-
Survey-weighted Generalized Linear Models(加权调查广义线性模型)
survey::svyglm()
: 加权调查广义线性模型适用于处理调查数据的生存分析,考虑了调查数据的权重设计。
-
Survey-weighted Ordinal Logistic Regression(加权调查有序 logistic 回归模型)
survey::svyolr()
: 加权调查有序 logistic 回归模型处理调查数据的有序分类生存分析,考虑了调查数据的权重设计。
-
Tidy Version of Competing Risks Regression Model(竞争风险回归模型的简洁版本)
-
tidycmprsk::crr()
: 简洁而易用的竞争风险回归模型,用于处理具有竞争风险的生存数据,提供了更直观的数据处理方式。
-
-
-
分类模型
-
所有模型汇总
multgee::nomLORgee()
、multgee::ordLORgee()
、MASS::polr()
、nnet::multinom()
。
-
Generalized Estimating Equations Model(广义估计方程模型)
-
multgee::nomLORgee()
: 广义估计方程模型用于处理具有分类响应变量的长期观测数据,适用于二元分类模型。 -
multgee::ordLORgee()
: 广义估计方程模型的有序 logistic 回归扩展,用于处理有序分类响应变量的长期观测数据。
-
-
Proportional Odds Logistic Regression Model(比例几率 logistic 回归模型)
MASS::polr()
: 比例几率 logistic 回归模型用于处理有序分类响应变量的数据,通过拟合分类阈值来预测不同类别的概率。
-
Multinomial Logistic Regression Model(多项 logistic 回归模型)
nnet::multinom()
: 多项 logistic 回归模型适用于处理具有多个离散分类响应变量的数据,用于预测每个类别的条件概率。
-
-
其他模型
-
所有模型汇总
-
lavaan::lavaan()
、lfe::felm()
、parsnip::modelfit()
、pscl::hurdle()
、pscl::zeroinfl()
、VGAM::vglm()
。
-
Structural Equation Modeling(结构方程模型)
lavaan::lavaan()
: 结构方程模型用于建立变量间的因果关系模型,通过观察变量之间的协方差和误差来估计模型参数。
Fixed Effects Linear Regression Model(固定效应线性回归模型)
lfe::felm()
: 固定效应线性回归模型用于处理面板数据,控制个体固定效应的同时估计因变量与自变量之间的关系。
General Model Fitting(通用模型拟合)
parsnip::modelfit()
: 通用模型拟合提供了一种灵活的方式来拟合各种类型的模型,用于在统一的框架下估计不同模型的系数和效果。
Hurdle Model(障碍模型)
pscl::hurdle()
: 障碍模型是一种处理具有零膨胀和非零成分的计数数据的模型,用于建模数据的生成过程并估计相关参数。
Zero-Inflated Model(零膨胀模型)
pscl::zeroinfl()
: 零膨胀模型是一种处理具有零膨胀和非零成分的计数数据的模型,适用于解释数据中零值出现的原因和其他成分的影响。
Vector Generalized Linear Model(向量广义线性模型)
VGAM::vglm()
: 向量广义线性模型是广义线性模型的推广,用于处理多元响应变量的数据,并允许灵活建模不同响应变量的关系
代码示例参考学习
library(broom.helpers)
library(gtsummary)
library(ggplot2)
library(dplyr)
model_logit <- glm(response ~ trt + grade, trial, family = binomial)
broom::tidy(model_logit) # 使用broom包中的tidy函数整理逻辑回归模型,得到模型的摘要信息# 已被后续做森林的数据准备
tidy_forest <- model_logit %>%# 对模型进行初始整理tidy_and_attach(exponentiate = TRUE, conf.int = TRUE) %>%# 添加分类变量的参考行tidy_add_reference_rows() %>%# 添加要在图中显示的参考值tidy_add_estimate_to_reference_rows() %>%# 添加变量标签tidy_add_term_labels() %>%# 从模型中删除截距估计tidy_remove_intercept() # 绘制矢森林图
tidy_forest %>%# 添加新的列 plot_label,用于构建绘图标签mutate(plot_label = paste(var_label, label, sep = ":") %>% # 将变量标签和标签组合起来作为绘图标签forcats::fct_inorder() %>% # 按照顺序重新排序forcats::fct_rev() # 反转顺序) %>%ggplot(aes(x = plot_label, y = estimate, ymin = conf.low, ymax = conf.high, color = variable)) + # 设置绘图 aestheticsgeom_hline(yintercept = 1, linetype = 2) + # 添加水平参考线geom_pointrange() + # 添加点范围coord_flip() + # 反转坐标轴theme(legend.position = "none") + # 设置图例位置labs(y = "Odds Ratio", # y轴标签x = " ", # x轴标签为空title = "Forest Plot using broom.helpers" # 图表标题) # 设置标签
参考文献:
Getting Started with broom.helpers • broom.helpers (larmarange.github.io)https://larmarange.github.io/broom.helpers/dev/articles/tidy.htmlcran.r-project.org/web/packages/broom.mixed/broom.mixed.pdf
https://cran.r-project.org/web/packages/broom.mixed/broom.mixed.pdf
相关文章:

broom系列包: 整理模型输出结果
broom包 说明 tidy、augment和glance函数的输出总是一个小tibble。 输出从来没有行名。这确保了您可以将它与其他整洁的输出组合在一起,而不用担心丢失信息(因为R中的行名不能包含重复)。 有些列名保持一致,这样它们就可以跨不同的模型进行组合。 tidy(…...
Spring Boot 参数校验机制原理以及如何实现一个自定义校验注解
Spring Boot 参数校验原理 Spring Boot 提供了一种方便的参数校验机制,借助于 JSR-303(Bean Validation)规范,通过在方法参数上添加校验注解来实现参数校验。下面是 Spring Boot 参数校验的基本原理: JSR-303 标准注解…...

长短期记忆神经网络
目录 LSTM 神经网络架构 分类 LSTM 网络 回归 LSTM 网络 视频分类网络 更深的 LSTM 网络 网络层 分类、预测和预报 序列填充、截断和拆分 按长度对序列排序 填充序列 截断序列 拆分序列 指定填充方向 归一化序列数据 无法放入内存的数据 可视化 LSTM 层架构 …...

解决vscode每次git pull/push都需要输入账号密码
git如何设置用户名 邮箱 密码 //设置用户 git config --global user.name "xxx"//设置邮箱 git config --global user.email "xxxxxx.com"//设置密码 git config --global user.password "xxxxx"解决每次git pull/push操作都需要输入密码 git …...

Rancher实用篇-使用rancher,部署微服务应用
说到rancher,我们必须先了解一下k8s 一、k8s简介 Kubernetes(通常简写为 K8s)是一个开源的容器管理系统,由Google于2014年发起,并在2015年贡献给Cloud Native Computing Foundation (CNCF)进行维护。它基于Borg项目的…...

爬取m3u8视频
网址:https://www.bhlsm.com/cupfoxplay/609-3-1/ 相关代码: #采集网址:https://www.bhlsm.com/cupfoxplay/609-3-1/ #正常视频网站:完整视频内容 # pip install pycryptodomex #流媒体文件:M3U8(把完整的…...

抖音视频抓取软件的优势|视频评论内容提取器|批量视频下载
抖音视频抓取软件在市场上的优势明显: 功能强大:我们的软件支持关键词搜索抓取和分享链接单一视频提取两种方式,满足用户不同的需求。同时,支持批量处理数据,提高用户获取视频的效率。 操作简单:我们的软件…...

apidoc接口文档的自动更新与发布
文章目录 一、概述二、环境准备三、接口文档生成1. 下载源码2. 初始化3.执行 四、文档发布五,配置定时运行六,docker运行 一、概述 最近忙于某开源项目的接口文档整理,采用了apidoc来整理生成接口文档。 apidoc是一个可以将源代码中的注释直…...
Oracle EBS R12.1 FA 批量计划外折旧
在资产工作台上可以进行单个资产的计划外折旧,如果进行批量计划外折旧的话就需要进行开发客户化form或者webadi 进行数据上载后调用FA 标准API了 以下是标准API的demo示例 DECLAREl_trans_rec FA_API_TYPES.trans_rec_type; l_asset_hdr_rec FA_API_TYPES.asset_hdr…...
15.3 基于深度学习的WiFi指纹低成本地点识别
文献来源:Nowicki M, Wietrzykowski J. Low-effort place recognition with WiFi fingerprints using deep learning[C]//Automation 2017: Innovations in Automation, Robotics and Measurement Techniques 1. Springer International Publishing, 2017: 575-584. 摘要 使…...

Git基本操作(1)
Git基本操作(1) 初始化git本地仓库git本地仓库配置git config user.name 和git config user.emailgit config --unset user.name和git config --unset user.emailgit config --global 认识工作区,暂存区,版本库更深层次理解 git a…...

k8s-helm部署应用 19
Helm部署nfs-client-provisioner(存储类): 预先配置好外部的NFS服务器 部署 Helm部署nginx-ingress应用: 添加下载ingress 拉取 解开并修改 部署 测试 回收 helm部署metrics-server: 清除之前的metrics部署 下载…...
OGG-00918 映射中缺少键列 id.
2024-02-23 14:54:49 INFO OGG-02756 从线索文件获取了表 GISTAR.PXPH_PON_ROUTE 的定义。. The following columns did not default because of type mismatches: id OGG-00918 映射中缺少键列 id. 目标端有字段ID,由于mysql自增,所以只能是b…...

QT_day4
1.思维导图 2. 输入闹钟时间格式是小时:分钟 widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);id startTimer(1000);flag1;speecher new QTextT…...

Spring Boot应用集成Actuator组件以后怎么自定义端点暴露信息
一、 前言 在平时业务开发中,我们往往会在spring Boot项目中集成Actuator组件进行系统监控,虽然Actuator组件暴露的端点信息已经足够丰富了,但是特殊场景下,我们也需要自己暴露端点信息,此时应该怎么操作呢࿱…...
C# CAD备忘录
Document doc Application.DocumentManager.MdiActiveDocument; Database db doc.Database; Editor ed doc.Editor; 1、获取打开cad文件-文件路径 string fileName db.Filename;//文件名 输出结果 fileName “L:\目录\200401.dwg” 2、获取打开cad文件-文件名称 string fi…...

【数据结构】排序(2)
目录 一、快速排序: 1、hoare(霍尔)版本: 2、挖坑法: 3、前后指针法: 4、非递归实现快速排序: 二、归并排序: 1、递归实现归并排序: 2、非递归实现归并排序: 三、排序算法…...

HarmonyOS开发行业前景就业分析与实例解析
HarmonyOS的简介 鸿蒙系统(HarmonyOS)是华为公司自主研发的一种全场景分布式操作系统,旨在为各种设备提供统一的开发和运行环境。它的编程基础主要建立在多种技术和语言之上,包括鸿蒙系统的核心框架和应用程序开发框架。 本章将…...

Elasticsearch:创建自定义 ES Rally tracks 的分步指南
作者:Alejandro Snchez 按照这个综合教程学习如何制作个性化的 Rally tracks ES Rally 是什么?它的用途是什么? ES Rally 是一个用于在 Elasticsearch 上测试性能的工具,允许你运行和记录比较测试。 做出决策可能很困难&#x…...

5分钟JavaScript快速入门
目录 一.JavaScript基础语法 二.JavaScript的引入方式 三.JavaScript中的数组 四.BOM对象集合 五.DOM对象集合 六.事件监听 使用addEventListener()方法添加事件监听器 使用onX属性直接指定事件处理函数 使用removeEventListener()方法移除事件监听器 一.JavaScript基础…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...

DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?
在工业自动化持续演进的今天,通信网络的角色正变得愈发关键。 2025年6月6日,为期三天的华南国际工业博览会在深圳国际会展中心(宝安)圆满落幕。作为国内工业通信领域的技术型企业,光路科技(Fiberroad&…...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...
TCP/IP 网络编程 | 服务端 客户端的封装
设计模式 文章目录 设计模式一、socket.h 接口(interface)二、socket.cpp 实现(implementation)三、server.cpp 使用封装(main 函数)四、client.cpp 使用封装(main 函数)五、退出方法…...
ArcPy扩展模块的使用(3)
管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如,可以更新、修复或替换图层数据源,修改图层的符号系统,甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...
字符串哈希+KMP
P10468 兔子与兔子 #include<bits/stdc.h> using namespace std; typedef unsigned long long ull; const int N 1000010; ull a[N], pw[N]; int n; ull gethash(int l, int r){return a[r] - a[l - 1] * pw[r - l 1]; } signed main(){ios::sync_with_stdio(false), …...