当前位置: 首页 > news >正文

单细胞跨模态分析综述

单细胞技术的最新进展使跨模态和组织位置的细胞高通量分子分析成为可能。单细胞转录组数据现在可以通过染色质可及性、表面蛋白表达、适应性免疫受体库分析和空间信息进行补充。跨模态单细胞数据的可用性越来越高,推动出新的计算方法,以帮助科学家获得生物学见解。随着该领域的发展,驾驭浩瀚的工具和分析步骤变得越来越困难。因此作者总结了单模态和多模态的单细胞分析基准研究,以发现通用的分析工作流程。这篇文章可作为单细胞(多)组学分析领域新手的切入点,也可以指导高级用户了解最新进展。

来自:Best practices for single-cell analysis across modalities, nature reviews genetics, 2023


转录组数据描述通过转录过程将DNA转录成RNA的结果,它反映了细胞中基因的表达水平。表观遗传组数据可以通过多种方式影响转录组的形成和变化,从而调控基因表达。两者密切相关。


目录

  • 背景概述
  • 转录组
  • 染色质可及性
    • 共可及性识别顺式调节相互作用
    • TF-motif分析
  • 表面蛋白质
  • 多模态数据整合
  • 利用空间解析单细胞数据

背景概述

单细胞RNA测序(scRNA-seq)技术以前所未有的规模和分辨率测量转录组谱,从而彻底改变了分子生物学。实验技术的进步推动了计算方法的大规模创新,导致目前有1400多个工具可用于分析scRNA-seq。计算框架和软件存储库,如Bioconductor、Seurat和Scanpy使数据分析人员能够在这个空间中快速构建管道。这种实验和计算创新的相互作用使得揭示组织细胞异质性的生物学里程碑式发现成为可能。

然而,scRNA-seq只捕获了关于细胞功能和状态信息的一层。为了补充这一点,已经做出了很大努力来测量单细胞分辨率下的其他模态,包括染色质可及性、表面蛋白、T细胞受体(TCR)和B细胞受体(BCR)库和空间信息,使得能够发现诸如2型糖尿病的regulatory signatures,内脏和适应性免疫系统对SARS-CoV-2的反应失调,并在空间分辨率上更好地理解肿瘤微环境的免疫抑制作用。测量实验的创新激发了许多用于各种单细胞模态的新计算工具,但由于算法开发人员缺乏全局的工作流程认知,改进或开发新工具依然具有挑战性。该文中,作者引导读者认识单模态和多模态单细胞数据分析的各个步骤,并分析挑战(图1)。

fig1

  • 图1:跨模态单细胞分析。细胞被不同模态描述,包括但不限于RNA转录、染色质可及性、以T细胞受体(TCRs)和B细胞受体(BCRs)在内的表面蛋白,和空间位置坐标。目前已经开发了涵盖重要分析步骤的各种框架。
  • 转录组学数据可以用Scanpy、Seurat和SingleCellExperiment进行分析;
  • 用muon、ArchR、snapATAC和Signac进行染色质可及性分析;
  • 使用Scirpy、Dandelion和scRepertoire进行TCR和BCR分析;
  • muon、Seurat和CiteFuse可以分析表面蛋白表达;
  • Squidpy、Seurat、Giotto可以分析空间数据。

转录组

scRNA-seq测量每个细胞的mRNA分子丰度。提取的生物组织样本构成了单细胞实验的输入。在单细胞解离(dissociation)过程中消化组织,然后进行单细胞分离,以分别分析每个细胞的mRNA。基于平板(plate-based)的方法将细胞分离到平板上的孔中,而基于液滴(droplet-based)的方法在微流体液滴中捕获细胞。

以液滴方法为例(因为液滴方法更流行),将获得的mRNA序列读数映射到原始数据处理管道中的基因和源细胞,该管道使用细胞条形码或唯一分子标识符(UMI)和参考基因组来产生基因细胞的计数矩阵(图2a)。我们将计数矩阵视为单模态的scRNA-seq数据分析工作流程的起点。
fig2

  • 图2:scRNA-seq分析步骤概述。

对于图2a:为了确保只捕获高质量的细胞,需要对RNA计数矩阵进行校正,并对双重细胞和低质量或濒死细胞进行过滤,可以通过去除质量控制指标方面的异常值来完成。所有计数都代表mRNA分子的成功捕获。考虑到实验噪声,当比较细胞之间的基因表达时,差异可能仅源于采样效应。我们可以通过标准化来获得细胞之间正确的相对基因丰度缓解该问题。

scRNA-seq数据集可以包含多达30000个基因的计数。然而,大多数基因并没有提供信息。因此,我们需要选择表达变化最大的基因。此外,我们需要对不同批次的数据进行集成,以获得跨样本的校正数据矩阵。为了减轻计算负担和减少噪声,通常应用降维技术。这进一步帮助我们将转录组数据的低维嵌入用于可视化。

对于图2b:我们可以将嵌入空间组织成簇,这些簇表示具有相似基因表达谱的细胞组,并由感兴趣的标签(如细胞类型)进行注释。注释可以使用先验知识手动进行,或者使用自动注释方法进行。连续过程(轨迹推断),如分化可以看作细胞身份的转换。


自动注释:可以分为基于分类器直接预测方法(有监督训练)和参考映射方法(KNN将reference标签映射到query数据集)。

手动注释:利用每个簇的基因特征来注释细胞簇。这些基因特征通常被称为标记基因,可以使用简单的差异表达测试方法(例如 t 检验或 Wilcoxon 检验)来识别。


对于图2c:根据感兴趣的问题和实验设置,揭示具体问题的机制,具体做法通常包括差异基因表达分析,基因富集分析,推断细胞-细胞通信。

对于差异基因表达(DGE)分析:可以根据DGE来鉴定标记基因或在特定条件下上调或下调的基因。目前DGE工具的一致性和稳健性较低,因此,必须对通过DGE测试获得的p值进行多次测试校正,以获得q值(q值用于控制误报率)。

对于基因富集分析:scRNAseq数据的高通量性质使其难以解释。基因集富集分析可以将大量基因总结为可解释的术语,如pathway(即现有研究已知的基因集)。常见的数据库包括MSigDB、Gene Ontology、KEGG或Reactome。常见的富集方法包括超几何测试和GSEA(Gene Set Enrichment Analysis)。富集分析对基因集的选择比对统计学方法更敏感,建议仔细选择数据库,以确保潜在的基因集被覆盖。

对于细胞-细胞通信:细胞之间不断相互作用,以促进组织发育。如果这种相互作用受损,疾病就会随之而来。细胞-细胞通信推理方法通常使用配体、受体及其相互作用的存储库来预测注释簇之间的相互作用。这些数据库偏向于特定pathway、功能类别的蛋白质。

染色质可及性

分析调控元件对于解读细胞多样性和理解细胞行为至关重要。基因表达受调控机制的控制,包括表观遗传学比如染色质可及性。为了深入了解单细胞水平上的染色质状态,转座酶可及染色质测序的单细胞分析(scATAC-seq)测量单个细胞中全基因组染色质的可及性(图3)。
fig2

  • 图3:scATAC-seq分析步骤概述。

对于图3a:scATAC-seq测量单细胞染色质可及性。数据可以用几种不同的方式表示。两种最常见的选择是cell-by-peak矩阵和cell-by-bin矩阵(具体见图3a并对比用于scATAC-seq有监督分类的Cellcano)。

对于图3b:为了确保后续分析侧重于有生物学意义的特征,而不是噪声,对特征矩阵进行质量控制。需要控制每个细胞的片段总数和相关信号的其他几个测试的数据:每个细胞具有非零计数的峰的数量、转录起始位点(TSS)富集分数。然后通过归一化来校正稀疏分布的scATAC-seq矩阵。随后的预处理和可视化工作流程紧密遵循scRNA-seq分析的步骤。


批次整合变成模态整合,由于RNA和ATAC特征不对齐,需要专业的模态整合方法。


对于图3c:如果是手动注释,scATAC-seq数据可以基于已知的 “差异可及区域-细胞类型” 关系进行注释。如果是自动注释,可以将RNA模态的细胞类型参考映射到ATAC模态的细胞上。然后,我们可以利用注释的细胞通过轨迹推断来分析连续过程。

对于图3d:根据特定问题揭示对应机制。我们可以根据共可及性(co-accessibility)确定顺式调节相互作用(cis-regulatory interaction),根据转录因子(transcription factor,TF)活性确定关键调节因子,根据motif用于确定用作TF结合位点的DNA序列模式。

共可及性识别顺式调节相互作用

对于co-accessibility:共可及性是指基因组中不同区域的开放性或可及性之间的相关性。在scATAC-seq中,共可及性指的是不同细胞中开放染色质区域的相似性或共同出现的模式。这意味着在某些细胞中,特定的基因组区域或染色质区段呈现开放状态,并且这种开放状态在其他细胞中也得到保留。GLUE中的guidance Graph,在ATAC对应特征下的子图能反映共可及性

顺式调节相互作用(cis-regulatory interaction)是指在基因组中,调控元件(调控区域)与其附近的目标基因所在区域之间的相互作用。这种相互作用发生在同一染色体上,即在顺式上。

根据共可及性确定顺式调节相互作用:

  • 共可及性峰值定义:从scATAC-seq数据中,首先需要获取co-accessibility peaks或scores。这些peak代表了在多个细胞中共同出现的开放染色质区域。
  • 基因定位:确定感兴趣的目标基因或基因集合。可以使用基因注释数据库或基因组注释信息来确定基因的位置。
  • peak与基因的关联:计算每个共可及性pair与目标基因之间的距离。可以根据基因的TSS(转录起始位点)或其他相关的区域来计算距离。
  • 统计分析:对于每个目标基因,可以计算其周围共可及性的富集程度。
  • 筛选和验证:根据统计分析的结果,可以设定一定的阈值来筛选出具有显著共可及性的顺式调节相互作用。进一步的验证可以使用其他实验技术,如用染色质构象捕获(Hi-C)来验证这些相互作用。

Hi-C是一种常用的染色质构象捕获技术,用于研究基因组中染色体间的相互作用。Hi-C数据通常以矩阵的形式表示,其中行和列代表基因组的不同区域,矩阵中的元素表示这些区域之间的相互作用频率。通过分析Hi-C数据,可以识别顺式调节相互作用,即具有较高的相互作用频率的染色体区域对。


TF-motif分析

TF(转录因子)是一类能够结合到DNA上调控基因表达的蛋白质(可以促进也可以抑制),而motif(基序)则是指在DNA序列中存在的具有特定模式的短序列,通常与TF的结合位点相关联。研究转录因子结合位点的基序可以帮助我们理解具体基因调控机制的物理过程(可以想象为建模配体-受体的相互作用)。


从scRNA-seq中获取TF:使用基因注释数据库将scRNA-seq数据中的基因与已知的转录因子基因进行比对和注释。基因注释数据库提供了基因的功能注释和分类信息,其中包括转录因子的注释。


确定关键调节因子(Key Regulators,关键的转录因子)的方法通常涉及以下步骤:

  • 转录因子活性分析:首先,需要对转录因子的活性进行评估。这些分析可以表明转录因子是否活跃。
  • 网络分析:构建基因调控网络,网络可以显示基因和转录因子之间的相互作用关系,并帮助确定关键调节因子。

对于motif发现,根据感兴趣TF找到基因调控网络中的相关基因,根据基因发现染色质区域,在该区域上进一步发现motif。

表面蛋白质

实际产生的产物,即蛋白质,承担细胞内或细胞外的任务,蛋白质的一个子集出现在细胞表面。表面蛋白表达有助于识别细胞类型,如免疫系统的造血细胞。用于结合scRNA-seq和表面蛋白分析的最广泛使用的方案是CITE-seq和REAP-seq(图4a)。

fig4

  • 图4:CITE-seq数据分析流程。
  • 图4a:抗体衍生标签(ADT,Antibody-derived tags)携带标签并处于抗体上,抗体与表面蛋白质结合,测序的ADT计数代表某类蛋白质的表达水平。
  • 图4b:ADT数据通常与RNA联合测量。因此,基因表达和ADT的配对计数矩阵经过质量控制和标准化,然后进行联合嵌入。
  • 图4c:CITE-seq数据的注释可以在转录组数据、ADT数据的水平上进行,也可以通过将聚类与标记基因和标记ADT匹配来联合进行。
  • 图4d:为了了解生物学机制,可以测试ADT数据的差异丰度,推断细胞-细胞通信,并构建RNA和ADT信息的相关网络。

ADT相比RNA,数据不会过度稀疏,在预处理时应与RNA数据单独分开进行。


细胞特性导致异质性捕获效率,从而导致偏差。只有表达靶向蛋白的细胞才会导致Tag计数的增加,这可能只是特定的细胞类型。


多模态数据整合

fig5

  • 图5:多模态数据整合。根据输入,整合方法分为三类:配对整合,不配对整合,混合整合或马赛克整合。

对于配对的测量,比如联合测量,输入表现为细胞配对,但特征不匹配。细胞维度充当整合锚点(见图5a)。

整合未配对的多组学数据(即对角整合,见图5b)的主要困难在于不同的特征空间,并且没有细胞维度的anchor信号。GLUE 将细胞状态建模为通过模态特定变分自动编码器学习的低维嵌入,这些变分自动编码器使用到基于先验知识的指导图。

尽管实验测定取得了进展,但同时从同一细胞中捕获几种模态仍然具有挑战性。另外对来自同一生物样本的不同个体细胞进行测量更为常见,这导致配对数据和未配对数据混合存在,因此称为马赛克整合或混合整合(见图5c)。

图5d为多模态场景下的参考映射。该领域的最新发展来自于多模态reference和query的出现。

利用空间解析单细胞数据

到目前为止,所有讨论的模态都是基于解离的单细胞组学技术,用于表征细胞身份和状态。然而,在多细胞生物中,细胞具有相互作用并形成空间结构的微环境,这些微环境可能因样本和条件而异。这使得能够发现新的细胞功能,并产生了新的计算挑战,需要不同的分析方法。空间组学在单细胞基因组学中添加两种额外的模态:组织学成像和空间特征测量。单个细胞的空间定位有助于了解组织微环境。细胞的空间坐标可以作为非分子特征。目前,分析空间数据需要专门针对空间模态定制的分析工具。

fig6

  • 图6:空间转录组学预处理和下游分析步骤概述。
  • 图6a:基于阵列的空间转录组学测量技术,用条形码(BC,barcode)区域量化基因表达,区域跨越 10μm 和 200μm 之间的区域。 BC 区域包含来自多个细胞的测量值,从而产生计数矩阵和空间坐标,其中每个观察值都是一个 BC 区域。细胞类型反卷积方法分解单个 BC 区域的细胞组以获得计数矩阵和空间坐标,其中每个观察值都是单个细胞。进一步的预处理可以类似于scRNA-seq数据集的分析来执行。
  • 图6b:基于图像的空间转录组学测量技术,例如荧光原位杂交(FISH)和原位测序(ISS)技术,在多轮顺序杂交中捕获转录组的各个位置。可以聚合转录物位置以获得单细胞水平的计数矩阵和空间坐标。随后的处理再次以与 scRNA-seq 类似的方式进行。
  • 图6c:空间转录组中的细胞结构可以在单个细胞或 BC 区域的分辨率下识别。
  • 图6d:空间转录组学中的机制可以通过识别跨空间变化的基因、分析细胞邻域并根据受体和配体、紧密连接或间接机制推断通信事件。

相关文章:

单细胞跨模态分析综述

单细胞技术的最新进展使跨模态和组织位置的细胞高通量分子分析成为可能。单细胞转录组数据现在可以通过染色质可及性、表面蛋白表达、适应性免疫受体库分析和空间信息进行补充。跨模态单细胞数据的可用性越来越高,推动出新的计算方法,以帮助科学家获得生…...

【零基础学机器学习 1】什么是机器学习?

机器学习的社会应用 1. 金融风控 机器学习在金融风控方面的应用非常广泛,可以用于预测借款人的信用风险、欺诈行为等。通过收集大量的历史数据,构建机器学习模型,可以对借款人的信用风险进行预测,从而帮助金融机构降低风险。 2…...

ARM处理器与中断——嵌入式(驱动)软开基础(一)

1 CPU的内部结构? CPU的内部结构大致可以分为: (1)控制单元(指令寄存器、指令译码器、操作控制器)。 (2)运算单元(算术逻辑单元)。 (3)存储单元(专用寄存器和通用寄存器) (4)时钟。 2 CPU跟内存、虚拟内存、硬盘的关系? (1)CPU要调用的程序和数据来自…...

WX小程序 - 2

条件渲染: wx:if "{{ newlist.length 0 }}" wx:else 跳路由:绑定点击事件,执行跳转页面 bindtap data-id"{{ item.id }}" 添加id wx.navigateTo 跳路由并传参, 下一个路由 onLoad生命周期可以获得参数…...

开源之夏2023 | 欢迎申请openEuler Embedded SIG开发任务

关于开源之夏 开源之夏是开源软件供应链点亮计划下的暑期活动,由中科院软件研究所与openEuler社区联合主办,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展。 活动联合各大开源社区,针对重要开源软件…...

【异常解决】vim编辑文件时提示 Found a swap file by the name “.start.sh.swp“的解决方案

vim编辑文件时提示 Found a swap file by the name ".start.sh.swp"的解决方案 一、问题描述二、原因说明三、解决方案3.1 方案1 删除即可3.2 方案2 禁止生成swp文件 一、问题描述 vim编辑文件时提示 Found a swap file by the name “.start.sh.swp”,如…...

「企业应用架构」应用架构概述

在信息系统中,应用架构或应用架构是构成企业架构(EA)支柱的几个架构域之一 应用架构描述了业务中使用的应用程序的行为,重点是它们如何相互之间以及如何与用户交互。它关注的是应用程序消费和生成的数据,而不是它们的内…...

ePWM模块(3)

比较模块 CMPA:比较寄存器A,其值与TBCTR值比较,相同时,事件发送到动作模块。 CMPB:比较寄存器B,其值与TBCTR值比较,相同时,事件发送到动作模块。 CMPCTL:控制寄存器(重要) SHDWAFULL(或SHDWBFULL):CMPA(或B)阴影寄存器满标志位 0:未满 1:满了 SHDWAMODE(或…...

【笔试强训选择题】Day11.习题(错题)解析

作者简介:大家好,我是未央; 博客首页:未央.303 系列专栏:笔试强训选择题 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!! 文章目录…...

JVM知识

垃圾收集器就是内存回收的具体实现 Serial Serial收集器是最基本的,发展历史最悠久的收集器。在JDK1.3之前是虚拟机新生代收集的唯一选择。是一种单线程收集器,只会使用一个CPU或者一条收集线程去完成垃圾收集工作,在进行垃圾收集的时候需要…...

操作系统第二章——进程与线程(中)

和光同尘,与时舒卷 文章目录 2.2.1 调度的概念,层次知识总览调度的基本概念高级调度低级调度中级调度三层调度的联系,对比进程的挂起态和七状态模型知识回顾 2.2.2 进程调度的时机,切换与过程,方式知识总览进程调度的时…...

AlphaFold的极限:高中生揭示人工智能在生物信息学挑战中的缺陷

人工智能程序AlphaFold (AlphaFold2开源了,不是土豪也不会编程的你怎么蹭一波?),通过预测蛋白质结构解决了结构生物信息学的核心问题。部分AlphaFold迷们声称“该程序已经掌握了终极蛋白质物理学,其工作能力已超越了最初的设计”。…...

RocketMQ双主双从环境搭建

环境要求 64位操作系统,推荐 Linux/Unix/macOS 64位 JDK 1.8 服务器准备 准备4台服务器两台master两台slave,如果服务器紧凑,则至少需要两台服务器相互master-slave IP HOSTS 172.*******.120 rocketmq-nameserver1 rocketmq-master1 …...

next.js博客搭建_初始化next项目(第一步)

文章目录 ⭐前言⭐next初始化TypeScript 开发项目安装react的ui框架(tDesign)设计布局 ⭐结束 ⭐前言 大家好,我是yma16,本期给大家分享next项目搭建博客的开始。 背景 因为我的博客网站https://yongma16.xyz是基于vue2搭建的&am…...

ACM - 其他算法 - 基础(前缀和 + 差分)

ACM- 其他算法 一、前缀和模板例题1、区间余数求K倍区间个数:AcWing 1230. K倍区间例题2、前缀和哈希求最长个数平分子串:Leetcode 面试题 17.05 字母与数字 二、差分1、一维差分2、二维差分 一、前缀和 模板 //一维前缀和 S[i] a[1] a[2] ... a[i] a[l] ... …...

No.056<软考>《(高项)备考大全》【冲刺10】《软考高项常见工具口语化解释》

《软考高项常见工具口语化解释》 序号工具名称口语化属于哪个过程1模板、表格和标准就是用之前的项目的模版、表格、标准,结合本项目进行了修改,在编制一些计划、方案的时候就可以采用这个工具和技术。可以拿来就用的,节约时间、提高质量的。…...

MySQL原理(九):表分区和分库分表

前言 上一篇介绍了 MySQL 的存储过程和触发器,这一篇将介绍表分区和分库分表相关的内容。 表分区 原本的表文件都是以完整的形式存储在磁盘中,而表分区则是指将一张表的数据拆分成多个磁盘文件,然后放到磁盘中存储。 做了表分区之后&…...

【Ehcache技术专题】「入门到精通」带你一起从零基础进行分析和开发Ehcache框架的实战指南(缓存查询-配置篇)

缓存查询 Ehcache中为我们提供了可以对Cache中缓存的元素进行查找的方式。其逻辑类似于SQL中的查找。通过给定各种限制条件,我们可以构造各种复杂的查询,然后返回结果集,也可以对查询进行分组和排序等。 使Cache可查询 Ehcache中的查询是针…...

MySQL基础(七)单行函数

1. 函数的理解 1.1 什么是函数 函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可。这样既提高了代码效率,又提高了可维护性。在 SQL 中我们也可以使用函数对检…...

Cy5.5-PEG-FA结构式 荧光Cy5.5标记聚乙二醇叶酸;PEG分子量2000,叶酸(-FA)基团可应用于靶向传递

Cy5.5-PEG-FA,Cy5.5-聚乙二醇-叶酸 中文名称:Cy5.5-聚乙二醇-叶酸 英文名称:Cy5.5-PEG-FA 溶剂:溶于水、氯仿,DMSO等常规性有机溶剂 性状:固体或粉末,取决于分子量 分子量:1k、…...

【微服务笔记23】使用Spring Cloud微服务组件从0到1搭建一个微服务工程

这篇文章,主要介绍如何使用Spring Cloud微服务组件从0到1搭建一个微服务工程。 目录 一、从0到1搭建微服务工程 1.1、基础环境说明 (1)使用组件 (2)微服务依赖 1.2、搭建注册中心 (1)引入…...

舞台特效-第14届蓝桥杯省赛Scratch初级组真题第2题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第131讲。 舞台特效,本题是2023年5月7日举行的第14届蓝桥杯省赛Scratch图形化编程初级组真题第2题&#xf…...

mysql 5.7.32安装及主从安装信息

最方便的 就是 直接使用docker容器 搭建一个比较方便 或者 直接使用yum源安装,说白了就是少踩坑。 或者 是直接使用 宝塔等工具帮忙,直接脚本跑 宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板 以下是内网两台机器安装的方法 1: 下…...

leecode111——二叉树最短路径

递归三部曲: 最小深度是从根节点到最近叶子节点的最短路径上的节点数量 (1)确定参数和返回值, 参数为传入根节点,再根据此遍历左右左右树的节点。返回最短路径,即int类型。 (2)确…...

Swift学习教程大纲

以下是Swift学习教程的大纲: 第一部分:基础知识 Swift简介 什么是Swift? Swift的历史和发展 Swift的特点和优势 开发环境的搭建 安装Swift编译器 配置开发环境 第一个Swift程序 Hello World程序 程序的结构 编译和运行程序 数据…...

HTML 基础知识

HTML基础知识 1. VSCode的安装与配置 下载地址 https://code.visualstudio.com/ 安装插件 Live Server Auto Rename Tag 自动格式化 点击 settings,然后输入format,然后勾选上 Format On Save。 2. HTML 基础标签 2.1 文件结构 快捷键&#xff1…...

国考省考结构化面试:综合分析题,名言哲理(警句观点启示)、漫画反驳题等

国考省考结构化面试:综合分析题,名言哲理(警句观点启示)、漫画反驳题等 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重要的还是申论和行测&a…...

【前端面经】CSS-浮动和清除浮动的方式

浮动和清除浮动的方式 在页面布局中,我们经常会用到浮动来实现一些特殊效果,但是浮动也会引起一些问题。在使用浮动布局时,我们需要清除浮动以避免出现布局问题。本文将介绍浮动的相关知识以及清除浮动的方式。 浮动 浮动是 CSS 中的一种布…...

【Android取证篇】ADB版本更新详细步骤

【Android取证篇】ADB版本更新详细步骤 更新ADB版本,解决无法连接设备问题【蘇小沐】 ADB没有自动更新的命令,我们需要下载新的ADB进行替换更新。 1、ADB查找 打开任务管理器(快捷键shiftctrlEsc或WinX),在“详细信…...

【rust】| 02——语法基础_变量(不可变?)和常量

系列文章目录 【rust】| 00——开发环境搭建 【rust】| 01——编译并运行第一个rust程序 【rust】| 02——语法基础_变量(不可变?)和常量 文章目录 1. 变量1.1 变量的定义1.2 试验变量的不可变特性 2. 常量2.1 常量的定义 3. 覆盖(同名变量)3.1 修改已定义变量的数据类型3.2 1…...