从KM到Cure Models:常用生存分析方法的优缺点

一、引言

生存分析是一种用于研究个体生命长度或事件发生时间的统计方法。在许多领域中,如医学、社会学、经济学和工程学等,生存分析被广泛应用于分析个体的生存时间,并研究相关因素对生存时间的影响。通过生存分析,我们可以评估特定因素对个体生存的影响,并预测未来事件的概率。

本文旨在介绍生存分析的基本原理、常用的统计方法以及在实际应用中的一些注意事项。首先,我们将介绍生存函数和生存曲线的概念,以及其与死亡率和风险的关系。然后,我们将介绍常用的生存分析方法,包括Kaplan-Meier方法和Cox比例风险回归模型等。

二、Kaplan-Meier(KM)方法

2.1 定义和原理

Kaplan-Meier方法是一种非参数的生存分析方法,用于估计个体在特定时间点上的生存概率。该方法适用于研究事件发生时间或生存时间的数据,如生存研究、药物试验和生态学研究等。

基本原理是通过观察每个个体的生存时间和是否发生事件(如死亡、复发或失败等),来构建生存函数和生存曲线。生存函数S(t)表示在给定时间t之前个体存活的概率,而生存曲线则是通过连接生存函数上的离散点所得到的曲线。

2.2 优点和缺点

  • 「Kaplan-Meier方法具有以下优点」

  1. 能够处理截尾数据:当有个体在研究结束时还未发生事件或被失去跟踪时,KM方法能够正确处理这些截尾数据。
  2. 能够考虑不完全观测数据:在实际研究中,可能存在部分个体观测时间较短或失落的情况,KM方法可以在这种情况下提供可靠的估计结果。
  3. 灵活性:KM方法不依赖于任何特定的分布假设,适用于各种类型的生存数据。
  • 「然而,KM方法也存在一些缺点」

  1. 无法考虑多个危险因素的影响:KM方法只能对单个因素进行分析,无法同时考虑多个危险因素的影响。
  2. 对样本量和事件数要求较高:KM方法对于小样本和少事件数的数据可能产生不稳定的估计结果。
  3. 忽略时间相关性:KM方法假设事件的发生是独立同分布的,忽略了事件发生时间之间的相关性。

2.3 实际应用中的适用性和局限性

Kaplan-Meier方法在实际应用中具有广泛的适用性,特别是对于生存时间或事件发生时间的研究。它可以用于评估药物的生存效果预测患者的生存期限,以及比较不同处理组或风险因素的影响等。

然而,KM方法也存在一些局限性。

  1. 首先,它无法提供关于危险因素的具体效应大小和统计显著性的信息。
  2. 其次,它不能处理连续性的时间变量,而只能基于离散的观测时间点进行分析。
  3. 此外,KM方法也不能直接处理多状态的生存数据,如多个事件或转换状态的发生。

三、Cox比例风险模型

3.1 定义和原理

Cox比例风险模型,也称为Cox回归模型或半参数回归模型,是一种常用的生存分析方法,用于研究危险因素对生存时间的影响。与Kaplan-Meier方法不同,Cox比例风险模型可以同时考虑多个危险因素的影响,并估计它们的相对危险度。

Cox比例风险模型的基本原理是基于半参数模型,它假设危险函数(即事件发生率函数)能够分解为基线危险函数和危险因素的乘积形式。模型通过估计危险因素的系数来量化不同因素对生存时间的影响,并计算各个因素的风险比例。模型考虑了因素的非线性效应以及时间的依赖性。

3.2 优点和缺点

  • 「Cox比例风险模型具有以下优点」

  1. 能够同时考虑多个危险因素:相比于Kaplan-Meier方法,Cox比例风险模型能够同时纳入多个危险因素,并估计它们对生存时间的相对影响。
  2. 不需要对生存函数的分布进行假设:Cox比例风险模型是一个半参数模型,不需要对生存时间的分布进行特定的假设,增加了灵活性和适用性。
  3. 能够处理截尾和不完全观测数据:与Kaplan-Meier方法类似,Cox比例风险模型也能够处理截尾和不完全观测的数据。
  • 「然而,Cox比例风险模型也存在一些缺点」

  1. 假设线性关系:Cox比例风险模型假设危险因素的影响是线性的,可能无法捕捉到非线性关系的影响。
  2. 无法估计绝对风险:Cox比例风险模型只能估计危险因素的相对风险,无法直接估计绝对风险或生存概率。
  3. 对比较大的样本量要求较高:Cox比例风险模型对于小样本量可能产生不稳定的估计结果。

3.3 实际应用中的适用性和局限性

Cox比例风险模型在实际应用中具有广泛的适用性,特别是在大样本量、多个危险因素和时间相关性较强的研究中。它经常用于评估药物的疗效、预测患者存活率以及探索各种危险因素对生存时间的影响。

然而,Cox比例风险模型也存在一些局限性。

  1. 首先,模型假设线性关系可能无法准确描述某些非线性关系的影响。
  2. 其次,该模型对样本量较大且事件数较多的数据要求较高,对于小样本量和少事件数的数据可能不适用。
  3. 此外,该模型仅能进行相对风险的比较,并不能直接估计绝对风险。

四、Weibull分布模型

4.1 定义和原理

Weibull分布是一种常用的概率分布,常用于描述和建模随机事件的时间间隔或寿命数据。它由两个参数组成:形状参数(shape parameter)和尺度参数(scale parameter)。Weibull分布的概率密度函数可以描述为:

f(t) = (β/η) * (t/η)^(β-1) * exp(- (t/η)^β)

其中,f(t)是时刻 t 的概率密度函数,β 是形状参数,η 是尺度参数。形状参数决定了概率密度函数的形状,可以反映事件发生率的变化趋势。

4.2 优点和缺点

  • 「Weibull分布模型具有以下优点」

  1. 灵活性:Weibull分布可以适应不同形状的概率密度函数,因此在建模不同类型的数据时具有较高的灵活性。
  2. 参数的物理意义:Weibull分布的形状参数和尺度参数具有明确的物理和统计含义,使得模型的解释和应用更加直观。
  3. 适用性广泛:Weibull分布广泛应用于可靠性工程、生存分析、风险评估等领域。
  • 「然而,Weibull分布模型也存在一些缺点」
  1. 数据的要求较高:Weibull分布模型对数据要求较高,特别是在参数估计中需要具有足够的样本量和事件发生数。
  2. 特定假设的限制:Weibull分布模型假设数据服从Weibull分布,但实际数据往往不符合该假设,因此在应用中需要小心验证和解释结果。

4.3 实际应用中的适用性和局限性

Weibull分布模型在实际应用中具有广泛的适用性,特别是在可靠性工程和生存分析领域。它经常用于估计产品或系统的可靠性指标、分析故障和失效时间、预测寿命等。

然而,Weibull分布模型也有一些局限性。

  1. 首先,它对数据的要求较高,需要满足Weibull分布假设,否则可能得到不准确的结果。
  2. 其次,模型的解释和应用需要考虑其他因素的影响,如随机误差、截尾数据等。
  3. 此外,Weibull分布模型适用于描述相对较短的时间尺度,对于极长时间尺度的数据可能不适用。

五、Log-rank检验

5.1 定义和原理

Log-rank检验是一种常用的生存分析方法,用于比较两个或多个生存曲线之间的差异是否显著。它基于卡方检验的原理,通过比较观察到的事件发生数与预期的事件发生数之间的差异来评估组别间的生存差异。

在Log-rank检验中,假设各组的生存曲线是同质的(即不存在差异),然后计算出每个时间点上的观察值和期望值的差异,再基于这些差异进行卡方检验。如果计算得到的统计量的p值小于预先定义的显著性水平(通常为0.05),则认为存在组别间的生存差异。

5.2 优点和缺点

  • 「Log-rank检验具有以下优点」

  1. 非参数性:Log-rank检验不依赖于对数据分布的假设,因此适用于各种类型的生存数据。
  2. 易于理解和解释:Log-rank检验基于生存曲线比较,结果易于理解和解释,适合用于呈现比较组别间生存差异的结果。
  3. 适用于大样本:Log-rank检验对大样本和小样本都具有较好的统计性能。
  • 「然而,Log-rank检验也存在一些缺点」

  1. 忽略了生存时间的连续性:Log-rank检验只考虑事件是否发生,而忽略了生存时间的连续性,可能导致信息损失。
  2. 无法处理时间依赖性:如果生存时间存在时间依赖性或重复事件发生,Log-rank检验可能不适用,需要使用其他方法进行分析。

5.3 实际应用中的适用性和局限性

Log-rank检验在实际应用中具有广泛的适用性,特别是在生存分析和临床研究领域。它经常用于比较不同治疗组的生存差异、评估预后因素的影响等。

然而,Log-rank检验也有一些局限性。

  1. 首先,它对数据的要求较高,需要满足生存数据的基本假设,如独立性、右侧截尾等。
  2. 其次,当数据存在时间依赖性或重复事件时,Log-rank检验可能不适用,需要使用其他统计方法进行分析。
  3. 此外,Log-rank检验只能比较两个或多个组别之间的生存差异,无法考虑其他因素的影响。

六、Aalen-Johansen估计器

6.1 定义和原理

Aalen-Johansen估计器是一种用于多状态生存分析的方法。多状态生存分析是一种考虑个体在不同生存状态间转换的分析方法,例如疾病的不同治疗阶段或事件的多种可能结果。

Aalen-Johansen估计器基于半参数模型,在每个时间点上估计每个状态的累积风险。它通过估计各个状态之间的转换率,并结合每个状态的累积风险,得到了多状态生存曲线。

6.2 优点和缺点

  • 「Aalen-Johansen估计器具有以下优点」

  1. 能够同时考虑多个事件和多个状态:Aalen-Johansen估计器能够处理多状态的生存数据,考虑个体在不同状态间的转换和观察时间。
  2. 非参数性:与传统的生存曲线估计方法相比,Aalen-Johansen估计器不需要对转换率的分布做出假设,具有较好的适应性。
  3. 估计状态转换概率:Aalen-Johansen估计器能够估计不同状态之间的转换概率,提供了更为全面的信息。
  • 「然而,Aalen-Johansen估计器也存在一些缺点」

  1. 计算复杂度高:Aalen-Johansen估计器在实现时需要进行较为复杂的计算,尤其是在具有大样本和多状态的情况下,可能需要更多的计算资源。
  2. 对数据量要求高:Aalen-Johansen估计器对数据量要求较高,需要足够的观察事件和转换信息才能准确估计各个状态的累积风险。

6.3 实际应用中的适用性和局限性

Aalen-Johansen估计器在实际应用中具有广泛的适用性,特别是多状态生存分析领域。它常用于评估治疗效果在不同状态间的差异、预测多个事件的发生率等。

然而,Aalen-Johansen估计器也有一些局限性。

  1. 首先,它对数据量要求较高,需要足够的观察事件和转换信息才能得到可靠的估计结果。
  2. 其次,计算复杂度较高,特别是在大样本和多状态情况下,可能需要更多的计算资源和时间。
  3. 此外,Aalen-Johansen估计器对于存在较大的遗失数据或混淆因素的情况下,估计结果可能会受到影响。

七、Parametric survival models

7.1 定义和原理

参数生存模型是一种统计模型,用于分析生存数据并预测事件发生的概率。与非参数生存模型不同,参数生存模型假设事件发生概率的函数形式,并估计该函数的参数值。

常见的参数生存模型包括指数模型、Weibull模型、log-logistic模型等。这些模型基于生存函数或风险函数的表达式,通过最大似然估计或其他统计方法来估计模型的参数。

7.2 优点和缺点

  • 「参数生存模型具有以下优点」

  1. 参数可解释性:参数生存模型提供了对事件发生概率的直观解释,可以理解不同因素对生存时间的影响。
  2. 预测精度:当数据符合模型假设时,参数生存模型可以提供较准确的事件发生概率预测。
  3. 可推广性:参数生存模型可以通过调整模型的形式和假设,适应不同类型的生存数据。
  • 「然而,参数生存模型也存在一些缺点」

  1. 对分布假设敏感:参数生存模型对数据分布的假设比较敏感,如果数据与假设不符,模型可能会导致误差累积。
  2. 限制模型灵活性:参数生存模型通过假设特定的函数形式来建模,这可能限制了对复杂关系的建模能力。
  3. 受离群值影响:参数生存模型对异常值或离群值比较敏感,可能导致估计结果的偏移。

7.3 实际应用中的适用性和局限性

数生存模型在实际应用中具有广泛的适用性。它可用于分析各种类型的生存数据,例如医学研究中的患者生存时间、产品寿命分析等。

然而,参数生存模型也有一些局限性。

  1. 首先,模型假设的合理性往往需要根据专业知识和领域背景进行评估,否则可能导致不准确的结果。
  2. 其次,如果数据不满足模型假设,模型的预测能力可能会下降。
  3. 此外,参数生存模型对大规模和高维数据的计算可能会面临挑战,需要有效的计算方法和高性能计算资源。

八、frailty模型

8.1 定义和原理

Frailty模型是一种用于生存分析的统计模型,用于考虑个体之间的随机效应或潜在变异因素对生存时间的影响。它是一种混合效应模型,与传统的Cox比例风险模型相比,Frailty模型加入了一个额外的随机项,表示个体之间的异质性。

Frailty项通常被认为是代表未观测到的个体特征或遗传因素等的潜在变量。通过引入这个随机项,Frailty模型可以更好地解释个体之间的差异,并提供更准确的生存时间预测。

8.2 优点和缺点

Frailty模型具有以下优点:

考虑了个体间的异质性:Frailty模型能够捕捉到个体之间的随机效应或潜在变异因素,提供了更准确的生存预测。 考虑了群体效应:Frailty模型能够通过随机项捕捉到个体在群体水平上的相互依赖关系和相似性。 可处理重复测量或集群数据:Frailty模型适用于重复测量或集群数据,可以考虑到不同个体之间和内部的相关性。 然而,Frailty模型也存在一些缺点:

额外的参数估计:Frailty模型引入了随机项,需要额外进行参数的估计,这可能增加了模型的复杂性。 数据要求较高:Frailty模型对数据量要求较高,需要有足够的观察事件和个体样本数量来准确估计随机项。 假设难以验证:Frailty项通常是未观测到的个体特征,因此假设其分布形式和具体含义很难进行验证。

8.3 实际应用中的适用性和局限性

Frailty模型在实际应用中具有广泛的适用性。它可用于各种生存数据分析,特别适用于研究个体间的异质性和群体效应。

然而,Frailty模型也存在一些局限性。首先,模型的合理性和应用范围需要根据研究问题和数据特点进行评估。其次,Frailty模型对数据的样本量和观察事件数量要求较高,否则可能导致参数估计不准确。此外,选择合适的随机项分布形式和解释随机项的具体含义是一个挑战,需要根据领域知识和实际情况进行判断。

九、Cure Models

9.1 定义和原理

具有剂量反应的生存分析是一种统计方法,用于评估某种治疗或曝露与生存时间之间的剂量-响应关系。它结合了生存分析和剂量-响应模型,旨在确定剂量与生存时间之间的相关性。

在具有剂量反应的生存分析中,常用的模型包括Cox比例风险模型和延迟效应模型。这些模型可以通过引入剂量作为预测变量来评估剂量与生存时间之间的关系。通常,剂量可以是连续变量或分类变量。

9.2 优点和缺点

  • 「具有剂量反应的生存分析具有以下优点」

  1. 提供剂量-响应关系:该方法能够评估治疗或曝露剂量与生存时间之间的关系,揭示剂量对生存的影响程度。
  2. 考虑非线性关系:具有剂量反应的生存分析可以考虑剂量与生存时间之间的非线性关系,更全面地描述剂量-响应曲线。
  3. 考虑个体差异:该方法可以考虑个体之间的异质性,允许个体在剂量-响应关系中有不同的表现。
  • 「然而,具有剂量反应的生存分析也存在一些缺点」

  1. 数据要求较高:该方法对于拥有大样本量和足够观测事件数量的数据要求较高,以确保准确估计剂量-响应关系。
  2. 模型选择的挑战:根据实际情况和研究问题,选择适当的剂量-响应模型可能是具有挑战性的。
  3. 假设检验的复杂性:针对剂量-响应关系进行假设检验需要考虑多个参数,增加了统计推断的复杂性。

9.3 实际应用中的适用性和局限性

具有剂量反应的生存分析在实际应用中具有广泛的适用性。它可以用于评估治疗、药物或曝露剂量与生存时间的关系,并帮助决策制定和个体化治疗方案。

然而,具有剂量反应的生存分析也存在一些局限性。

  1. 首先,数据质量和可靠性对于准确估计剂量-响应关系至关重要。
  2. 其次,选择适当的剂量-响应模型需要根据不同情况进行判断,可能存在一定的主观性和不确定性。
  3. 此外,该方法假设剂量是因果影响生存时间的唯一因素,但在实际应用中,其他因素可能会对生存产生重要影响,如共变量的调整等。

十、总结

在实际应用中,研究人员需要综合考虑研究问题的特点,选择适当的生存分析方法,并结合其他统计方法进行进一步的分析和解释。

*「未经许可,不得以任何方式复制或抄袭本篇文章之部分或全部内容。版权所有,侵权必究。」

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/35314.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

交换排序——选择排序和冒泡排序的区别是什么?

今天重温一下算法,其实刚开始我觉得冒泡排序和选择排序是一样的,因为他们排序过程中都是通过相邻的数据比较找到最小/最大的数据,通过不断思考和学习才明白,两者还是有区别的。 冒泡排序 概念 冒泡排序(Bubble Sort)&#xff0…

SpringBoot使用thymeleaf模版引擎配置自定义错误页面

1、要在Spring Boot项目中配置自定义的错误页面&#xff0c;你可以遵循以下步骤&#xff1a; 1.1、pom.xml引入thymeleaf <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId><…

【正版系统】2023热门短剧SAAS版开源 | 小程序+APP+公众号H5

当我们在刷百度、D音、K手等各种新闻或短视频时经常会刷到剧情很有吸引力的短剧广告&#xff0c;我们点击广告链接即可进入短剧小程序&#xff0c;小程序运营者通过先免费看几集为诱耳然后在情节高潮时弹出充值或开VIP会员才能继续看的模式来赚钱&#xff0c;以超级赘婿、乡村小…

VS Code中C++程序的调试(Debug)功能

有一个.vscode文件&#xff0c;存放当前工作区相关配置文件的目录。 launch.json {"version": "0.2.0","configurations": [{"name": "gcc.exe - 生成和调试活动文件", // 该调试任务的名字&#xff0c;启动调试时会在待…

TCP/IP 下的计算机网络江湖

〇、引言 在当今数字化时代,计算机网络宛如广袤江湖,涵盖着五大门派:物理层、数据链路层、网络层、传输层和应用层。每个门派独具技能,共同构筑着现代网络的框架。物理层宛如江湖基石,将比特流传输;数据链路层如武林传承,组织数据帧传递;网络层则像导航大师,寻找传送路…

使用阿里云服务器搭建PostgreSQL主从架构图文流程

阿里云百科分享使用阿里云服务器搭建PostgreSQL主从架构图文流程&#xff0c;PostgreSQL被业界誉为最先进的开源数据库&#xff0c;支持NoSQL数据类型&#xff08;JSON/XML/hstore&#xff09;。本文档介绍在CentOS 7操作系统的ECS实例上搭建PostgreSQL主从架构的操作步骤。 目…

【Linux操作系统】文件描述符fd

&#x1f525;&#x1f525; 欢迎来到小林的博客&#xff01;&#xff01;       &#x1f6f0;️博客主页&#xff1a;✈️林 子       &#x1f6f0;️博客专栏&#xff1a;✈️ Linux之路       &#x1f6f0;️社区 :✈️ 进步学堂       &#x1…

python单元测试框架(测试固件、批量执行)

python测试框架 在Python语言中应用最广泛的单元测试框架是unittest和pytest,unittest属于标准库&#xff0c;只要安装了Python解释器后就可以直接导入使用了,pytest是第三方的库&#xff0c;需要单独的安装。 1.白盒测试原理 在软件架构的层面来说&#xff0c;测试最核心的…

Kotlin入门:变量和函数——02

目录 一、Kotlin 基本数据类型 ​编辑 二、变量 val 关键字&#xff1a; var 关键字: 类型推断: 可空类型: 三、函数 基本函数语法&#xff1a; 单表达式函数&#xff1a; 默认参数值&#xff1a; 命名参数&#xff1a; 一、Kotlin 基本数据类型 Kotlin 的基本数…

vue数据更新table内容不更新解决方法

场景&#xff1a; table组件绑定的数据变化时&#xff0c;页面没有重新渲染&#xff0c;常见于子组件中使用table组件 原理&#xff1a; 创建实例时 数组在vue中没有被监听到&#xff0c;属于非响应式数据&#xff0c;数组的下标变化无法监听到 解决方式&#xff1a; <e…

SpringSecurity如何放行资源

SpringSecurity配置放行资源 permitAll配置实例 EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter {Overridepublic void configure(HttpSecurity http) throws Exception {http.authorizeRequests().antMatchers("/css/**", …

数据库事务ACID介绍

一、ACID简介 ACID&#xff0c;是指数据库管理系统&#xff08;DBMS&#xff09;在增删改数据的的过程中&#xff0c;为保证事务&#xff08;transaction&#xff09;的准确性&#xff0c;可靠性等&#xff0c;所必须具备的四个特性&#xff1a;原子性&#xff08;atomicity&a…

【MFC】09.MFC视图-笔记

MFC视图窗口&#xff1a;CView类 显示数据/画面 我们之前的绘图消息&#xff0c;都是在框架类上画出来的 视图窗口就覆盖在框架窗口上 视图窗口本质上也是窗口&#xff0c;只是和框架窗口风格不同 CView类也继承于CWnd类 CView也能处理消息&#xff0c;因为它继承于CWnd类…

关于selenium 元素定位的浅度解析

一、By类单一属性定位 元素名称 描述 Webdriver API id id属性 driver.find_element(By.ID, "id属性值") name name属性 driver.find_element(By.NAME, "name属性值") class_name class属性 driver.find_element(By.CLASS_NAME, "class_na…

25考研:跨专业考研难吗?

25考研&#xff1a;跨专业考研难吗&#xff1f; 嘉兴校址&#xff1a;嘉兴市南湖区中山东路205号嘉华广场4楼 &#xff08;建国珠宝城旁&#xff09;上元教育 海宁校址&#xff1a;海宁市西山路832号金贸大厦11楼1101号上元教育 桐乡校址&#xff1a;桐乡市东悦路吾悦广场156号…

MAUI+Blazor:隐藏标题栏和问题

文章目录 前言相关文章代码问题有必要解决吗&#xff1f; 前言 最近在研究MAUIBlazor开发&#xff0c;发现一个问题&#xff0c;原生的的标题栏实在是太丑了。 相关文章 MAUI桌面端标题栏设置和窗口调整 MAUI Windows How to completely hide the TitleBar? #15142 MAUI …

Chrome开发者工具介绍

Chrome开发者工具介绍 前言1 打开DevTools2 命令菜单3 Elements面板ConsoleJavaScript调试Network 前言 Chrome开发者工具是谷歌浏览器自带的一款开发者工具&#xff0c;它可以给开发者带来很大的便利。常用的开发者工具面板主要包含Elements面板、Console面板、Sources面板、…

数据结构——时间复杂度和空间复杂度

1.算法效率 2.时间复杂度 3.空间复杂度 4. 常见时间复杂度以及复杂度oj练习 1.算法效率 1.1 如何衡量一个算法的好坏 如何衡量一个算法的好坏呢&#xff1f;比如对于以下斐波那契数的计算 long long Fib(int N) { if(N < 3) return 1; return Fib(N-1) Fib(N-2); }我们看到…

2023 互联网大厂薪资大比拼

最近整理了33家互联网大厂的薪资情况。可以看出来&#xff0c;大部分互联网大厂薪资还是很不错的&#xff0c;腾讯、阿里、美团、百度等大厂平均月薪超过30k&#xff0c;其他互联网大厂平均月薪也都在25k以上。01020304050607080910111213141516171819202122232425262728293031…

yo!这里是STL::list类简单模拟实现

目录 前言 重要接口实现 框架 默认成员函数 迭代器&#xff08;重点&#xff09; 1.引言 2.list迭代器类实现 3.list类中调用实现 增删查改 后记 前言 我们知道&#xff0c;stl中的vector对应数据结构中的顺序表&#xff0c;string类对应字符串&#xff0c;而今天要…