自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(336)
  • 收藏
  • 关注

原创 Python|玩转 Asyncio 任务处理(1)

而 context 参数,从 Python 3.11 开始支持,允许你为任务设置一个上下文变量,实现任务内部的局部存储,这与 Threading.local() 为线程提供的功能类似,但这里是用于异步任务的。这个函数需要一个单独的可等待对象作为输入(如果输入是协程,它会自动被包装成任务对象,这样就可以在事件循环中执行),然后会等待这个对象完成。为了避免这种情况,你需要保持对任务对象的非弱引用,这可以通过将 create_task 函数返回的任务对象存储在变量或其他对象中来实现。

2024-06-21 10:07:14 272

原创 实战|YOLOv10 自定义目标检测

在 YOLOv10 中,主干网络负责提取特征,它采用了改进版的 CSPNet(跨阶段部分网络),这一改进有助于优化梯度传播,并降低计算过程中的重复性。:在推理过程中,对于每个目标对象生成单一的最佳预测结果,这样做可以省去 NMS(非极大值抑制)的步骤,减少处理时间,提高整体的效率。:在训练过程中,对于每个目标对象生成多个预测结果,这样做可以提供更多的监督信号,从而提升模型的学习精度。显然,YOLOv10 是实时物体检测应用的尖端技术,能够以更少的参数提供更高的精度和速度性能。

2024-06-19 13:00:39 544

原创 Python网络数据抓取(9):XPath

XML,即扩展标记语言,它与 HTML,也就是我们熟知的超文本标记语言,有相似之处,但也有显著的不同。这样,无论是 HTML 还是 XML 文档,都可以被想象成一棵树,并且可以通过 XPath 语法来查询和选取文档中符合特定模式的节点。我之所以这样讲,是因为当你查看这个特定的 XML 文档时,你会发现有一个标签叫做 "Movie Database",在它下面可以包含多个电影标签。因此,你可以自由地命名标签,而且 XML 现在通常用于在不同的网络服务之间传输数据,这是 XML 的一个主要应用场景。

2024-06-17 22:11:13 831

原创 单细胞|RNA-seq & ATAC-seq 联合分析

为了找到可能调控每个基因的峰值集合,我们可以计算基因表达与其附近峰值可及性之间的相关性,并校正由于 GC 含量、整体可及性和峰值大小引起的偏差。在这里,我们通过执行潜在语义索引 ( LSI ),以处理 scATAC-seq 数据集的相同方式处理 DNA 可及性检测。为了注释数据集中的细胞类型,我们可以使用 Seurat 包中的工具,将细胞标签从现有的 PBMC 参考数据集中转移过来。使用 Seurat v4 中的加权最近邻方法,我们可以计算代表基因表达和 DNA 可及性测量的UMAP图。

2024-06-17 10:15:03 332

原创 Python:从头创建 Asyncio (2)

我努力使事件循环管理器的设计尽可能简洁,尽管这仅是 asyncio 工作理念的简化版,与实际的库相比,我的实现在细节上与官方源代码的执行流程有所不同。当事件循环处理到新的 _sleep 任务时,它会检查时间,如果时间未到,同样会执行 yield,将控制权交还给事件循环。在我们的 Task 类中,我们将生成器对象保存在 self.iter 属性中,并设置 self.finished 属性为 False,用以跟踪生成器是否已经运行完毕(当生成器引发 StopIteration 异常时,表示其运行结束)。

2024-06-14 16:14:12 285

原创 深度学习长文|使用 JAX 进行 AI 模型训练

实际上,考虑到 PyTorch 背后庞大的开发者社区,以及 PyTorch 所原生支持而 JAX/FLAX 尚未涵盖的众多特性(例如自动混合精度、先进的注意力机制层,至少在本文撰写时),有人可能会强烈主张没有必要投入时间去掌握 JAX。在本文中,我们将使用 Flax,据本文撰写时的观察,它似乎是最受欢迎的选择。值得注意的是,每个机器学习开发框架都可能拥有其独到的特性(例如,截至本文撰写时,JAX 的 SPMD 自动分片和 PyTorch 的 SDPA 注意力机制),这些特性可能在性能比较中起到关键作用。

2024-06-13 10:56:25 471

原创 Docker|了解容器镜像层(2)

本质上,它需要一个目录,其中包含所有需要可用的文件。在实践中,这些目录和文件的命名都是基于内容的摘要,以便于识别。为了使其能够支持读写操作,创建了一个新的快照目录,并将 layer4 的内容复制进去。正如预期的那样,delete-me.txt 将从合并中删除,并在同一目录中创建一个新文件 new.txt。我们将使用 lower 作为下(父)层,使用 upper 作为上(子)层,作为文件系统的工作目录,并合并以包含合并的文件系统。这将在合并目录中创建一个新的文件系统,其中包含下层目录和上层目录的组合内容。

2024-06-11 23:07:39 1045

原创 Signac|成年小鼠大脑 单细胞ATAC分析(2)

我们同样可以利用CoveragePlot()函数,根据不同的细胞聚类、细胞类型或对象中存储的其他任何元数据信息,为特定的基因组区域绘制出分组的覆盖度图。这些覆盖度图实际上是伪批量的可访问性轨迹图,通过将同一组内所有细胞的信号进行平均,从而在视觉上展示出特定区域内DNA的可访问性情况。我们通过在不同的系统上进行相同的分析,来展示其性能以及对不同组织类型的适用性,并提供了一个来自不同物种的示例。在本教程中,我们将探讨由10x Genomics公司提供的成年小鼠大脑细胞的单细胞ATAC-seq数据集。

2024-06-10 10:47:41 343

原创 什么是大型语言模型 ?

我们之前提到的书籍和网站,现在可以这样理解:基于我们提供的数据片段,模型学习到 "I like to eat apple" 是一个频繁出现的句子。然而,自从论文《Attention is all you need》发表之后,Transformer 架构的出现,使得通过训练神经网络处理庞大的数据集,实现对上下文的深入理解成为现实。训练这些超大型模型是非常昂贵的。"apple" 被预测为接下来的单词,这是因为在模型训练所用的大量数据中,"I like to eat" 后面最常跟随的就是 "apple"。

2024-06-08 16:31:43 1005

原创 Docker|了解容器镜像层(1)

例如,FROM scratch 的真正含义是没有父层,因此我们的例子实际上是从 layer2 的内容开始的。这是层缓存的基础,它最小化了构建或重新创建层的需求。创建第二个目录,/img/layer2,并将 /img/layer1 中的所有内容复制到其中。创建第三个目录,/img/layer3,将 img/layer2 中的所有内容复制到其中。它的好处在于,可以在下载文件时识别相同的内容,并识别文件的任何损坏。最后,创建第四个目录,/img/layer4,将 img/layer3 中的所有内容复制到其中。

2024-06-07 23:03:27 921 1

原创 Signac|成年小鼠大脑 单细胞ATAC分析(1)

在ATAC-seq实验中,Tn5转座酶在转录起始位点(TSS)处的整合事件的富集程度,是一个关键的质量控制指标,用于评价Tn5的定位效率。细胞数据已经被嵌入到一个低维度的空间里,我们可以采用单细胞RNA测序(scRNA-seq)数据常用的分析方法,执行基于图谱的聚类分析,并通过非线性降维技术来进行数据可视化。在分析中,LSI(线性判别分析)的第一个主成分往往反映的是测序的深度(即技术层面的变异),而非生物学上的变异。我们可以分析所有细胞的DNA片段长度的周期性变化,并根据细胞核小体信号的强弱进行分类。

2024-06-06 22:24:54 466

原创 Linux|如何安装 Java

将指导您在Ubuntu 24.04,Ubuntu 22.04和Ubuntu 20.04上安装Java,涵盖了Ubuntu存储库和官方Oracle软件包的安装。您可以从Ubuntu存储库中安装多个版本的Java,并使用Update-Alternatives命令在不同的Java版本之间切换,如图所示。下载后,使用以下DPKG命令安装Oracle Java安装程序文件,其中包含必要的二进制文件和文件以运行系统上的Java开发套件。安装了多个版本的Java版本,您可以使用Java平台的不同版本测试和开发应用程序。

2024-06-05 11:33:09 356

原创 Python网络数据抓取(8):正则表达式

现在,如果被抓取的电子邮件不遵循此模式,那么我们可以轻松忽略该电子邮件并可以继续处理另一封电子邮件。我们将用 python 编写一个简单的代码来识别此类电子邮件,并且我们将使用 python 的 re 库。我们将匹配模式,直到 @ 符号和括号后面的加号意味着我们正在寻找这些字符中的一个或多个字符的任意组合。每个反斜杠数字代表一个组,因此我们的新模式是将三个组连接在一起,而不使用连字符。现在,假设我们需要将每个电话号码输入到不带连字符的连续数字字符串中,但我们希望保留单词形式的连字符。大写字母 [A-Z]

2024-06-04 11:18:57 358

原创 单细胞分析(Signac): PBMC scATAC-seq 基因组区域可视化

这些图表呈现了一种模拟的批量可访问性轨迹,即组内所有细胞的信号被综合平均后,用来展示该区域 DNA 的可接近性(这一功能的灵感来源于 Andrew Hill 在其精彩博客文章中的分享)。在 CoverageBrowser() 界面中,点击“保存图表”按钮可以将当前的图表保存到一个 ggplot 对象的列表中,当您完成交互式浏览并点击“完成”按钮时,这个列表将被返回,这样您就可以在交互式会话中保存那些有价值的视图。我们也可以通过 CoverageBrowser() 函数来生成这些图表的交互式版本。

2024-05-29 14:15:31 229

原创 单细胞分析(Signac): PBMC scATAC-seq 整合

在对基因列表进行深入分析时,可以发现,在未激活的 T 细胞(Naive T cells)中开放的峰值通常与如 BCL11B 和 GATA3(T 细胞分化的关键调控基因)等基因相邻,而在单核细胞(monocytes)中开放的峰值则通常与如 CEBPB(单核细胞分化的关键调控基因)等基因相邻。我们还可以使用逻辑回归进行差异性分析,这是 Ntranos 等人在 2018 年针对单细胞 RNA 测序(scRNA-seq)数据提出的建议,同时将片段总数作为一个隐变量来考虑,以减少测序深度差异对分析结果的影响。

2024-05-24 11:46:18 411 1

原创 单细胞分析(Signac): PBMC scATAC-seq 聚类

然而,仅凭监督分析来进一步细分这些细胞类型是有难度的。这里,我们将采用一种简便的方法,即累加与基因本体及其启动子区域相交的片段(我们也推荐使用Cicero工具,它能够实现类似的目标,并且我们提供了一个指南,展示如何在Signac工作流中运行Cicero)。因此,在后续分析中,我们将排除这个主成分,目的是避免基于细胞的总测序深度来进行细胞分组,而应依据细胞在特定细胞类型峰值上的可访问性模式来进行分组。通常,潜在语义索引(LSI)的第一个主成分反映的是测序的深度(即技术层面的变异),而非生物学上的变化。

2024-05-23 17:32:04 629

原创 单细胞分析(Signac): PBMC scATAC-seq 质控

转录起始位点(TSS)富集度评分:ENCODE项目根据TSS中心区域的片段与TSS两侧区域片段的比例,定义了一种ATAC-seq的靶向评分(详情请访问https://www.encodeproject.org/data-standards/terms/)。最后请注意,上述提到的最后三个指标不仅可以从CellRanger的输出结果中获得(这些结果会存储在对象的元数据中),而且也可以使用Signac软件包来计算非10x科技公司的数据集(有关更多信息,请参见本文档的末尾部分)。但是,请注意,如果设置了。

2024-05-21 21:11:41 644

原创 Linux|如何在 awk 中使用流控制语句

对于上面的形式,如果条件 1 为 true,则执行 actions1 并退出 if 语句,否则评估条件 2,如果为 true,则执行 actions2 并退出 if 语句。当您从 Awk 系列一开始回顾我们迄今为止介绍的所有 Awk 示例时,您会注意到各个示例中的所有命令都是按顺序执行的,即一个接一个。这里,该方法简单地定义为使用计数器来控制循环执行,首先需要初始化计数器,然后根据测试条件运行它,如果为真,则执行操作,最后递增计数器。条件是一个 Awk 表达式,操作是条件为真时执行的 Awk 命令行。

2024-05-21 11:29:47 658

原创 Python网络数据抓取(7):Selenium 模拟

因此,我们通常会采用 JavaScript 渲染的方式来替代传统的 GET HTTP 请求进行抓取。我们的目标是利用 Selenium 抓取一个内容会动态变化的网站,以沃尔玛网站为例。即使在外部服务器上的生产中使用 selenium,也建议您以无头模式使用它,以避免浪费 CPU 资源。和亚马逊类似,沃尔玛也实施了反机器人检测机制,但在进行网页抓取时,还需要进行 JavaScript 的渲染处理。这将为我们提供当前页面的来源。现在,我们将声明我们的驱动程序,您必须使用安装 chromium 驱动程序的路径。

2024-05-20 14:08:45 1071

原创 深度学习:Pytorch 与 Tensorflow 的主要区别(2)

虽然理论上可以在任何一个框架上部署神经网络的概念,但最终的输出结果会因框架的不同而有所差异。而 TensorFlow 虽然也支持 GPU 加速,但它使用的是内部的 GPU 加速机制,因此模型的训练时间并不受我们选择的框架影响。对于刚接触这一领域的你来说,深度学习是计算机科学中的一个分支,它通过模仿人脑结构的人工神经网络,赋予计算机以类似人类的智能,使其能够解决现实世界的问题。你需要付出更多的努力。在 PyTorch 框架中,神经网络是通过类的形式来定义的,所需的层是通过 torch.nn 模块导入的。

2024-05-17 22:26:27 924 1

原创 单细胞分析(Signac): PBMC scATAC-seq 预处理

不同之处在于,矩阵中的每一行不是代表一个基因,而是代表基因组中的一个特定区域(称为峰值),这个区域被预测为开放染色质的区域。举例来说,我们可以对一个将 ChromatinAssay 设为当前活动分析方法的 Seurat 对象执行 granges 函数(或者直接在 ChromatinAssay 对象上执行),以此来查看该对象中每个特征所对应的基因组区域。尽管如此,保留这个文件的好处在于它包含了与每个单细胞相关的所有片段信息,而不仅仅是那些映射到峰值的片段。您拥有的数据可能以三个文件的形式组织:一个计数文件(

2024-05-16 14:41:00 424

原创 Linux|如何允许 awk 使用 Shell 变量

我们已经介绍了 Awk 功能的一个重要部分,它可以帮助我们在 Awk 命令中使用 shell 变量。很多时候,您会在 shell 脚本中编写小型 Awk 程序或命令,因此,您需要清楚地了解如何在 Awk 命令中使用 shell 变量。当我们编写 shell 脚本时,我们通常会在脚本中包含其他较小的程序或命令,例如 awk 操作。这可以通过在 Awk 命令中使用 shell 变量来完成,在本文中,我们将学习如何允许 Awk 使用 shell 变量,这些变量可能包含我们想要传递给 Awk 命令的值。

2024-05-15 14:49:56 451 2

原创 Python网络数据抓取(6):Scrapy 实战

我们将抓取亚马逊的图书部分,更具体地说,我们将抓取过去 30 天内发布的书籍。我们现在准备从亚马逊上抓取我们的目标元素。现在,在我们的 parse 方法中,我们将声明一个变量,它将成为 AmazonscraperItem 类的实例。我们将删除 allowed_domains 变量,因为我们不需要它,同时我们将声明 start_urls 到我们的目标 URL。但和往常一样,这不会持续多久,因为亚马逊的反机器人技术将会启动,你的抓取工具将会停止。现在,我们将它们存储在各自的临时物品容器中,这就是我们的做法。

2024-05-14 10:36:15 437

原创 Pytorch 与 Tensorflow:深度学习的主要区别(1)

值得注意的是,PyTorch 经过了彻底的重新设计和定制,以确保其运行速度和用户体验的原生性,它超越了仅仅是支持通用编程语言的接口层。对于刚接触这一领域的你来说,深度学习是计算机科学中的一个分支,它通过模仿人脑结构的人工神经网络,赋予计算机以类似人类的智能,使其能够解决现实世界的问题。尽管市面上有众多的深度学习框架,它们各自都有其独特的优势,但本文选择对比 PyTorch 和 TensorFlow,是因为这两大框架的对比特别引人入胜。在 TensorFlow 中,计算图是在代码执行过程中静态构建的。

2024-05-13 16:37:56 959

原创 单细胞分析:多模态 reference mapping (2)

通过这种方法,我们可以将蛋白质和RNA的测量值进行加权组合,以“指导”PCA的计算过程,从而凸显出数据中最为重要的变异因素。在Seurat v4版本中,大幅提高了执行集成任务,包括参考映射的速度和内存效率,并且还新增了将查询细胞投影到之前计算好的UMAP(Uniform Manifold Approximation and Projection,均匀流形近似和投影)可视化界面的功能。例如,我们将由人类细胞图谱项目生成的,来自八位不同捐献者的人类骨髓单核细胞(BMNC)数据集进行了映射。

2024-05-10 17:36:50 979

原创 Linux|了解如何使用 awk 内置变量

但是我们也可以更改这些值,不过,不建议这样做,除非您知道自己在做什么,并且有足够的理解。您将意识到,每个输入行都会打印出文件名,这是当您使用 FILENAME 内置变量时 Awk 的默认行为。使用 NR 来计算输入文件中的行(记录)数,请记住,它还会计算空行,正如我们将在下面的示例中看到的那样。FS 的默认值是空格和制表符,但我们可以将 FS 的值更改为任何字符,以指示 Awk 相应地划分输入行。接下来,您还可以使用 FS 内置变量指定输入字段分隔符,它定义 Awk 如何将输入行划分为字段。

2024-05-09 13:32:22 470

原创 scrapy5

显而易见,如果你打算利用requests库来批量抓取亚马逊的数百万页面,那么你需要处理好多事项,包括设置合适的请求头、进行代理服务器的轮换以及处理验证码问题。首先,我们声明了一个对象和一个数组。现在,我们将使用 pandas 和该数组创建一个数据框,然后使用该数据框创建 CSV 文件。Pandas 是一个 Python 库,它提供灵活的数据结构,使我们与数据的交互变得非常容易。值得一提的是,数据抓取工具的应用范围并不局限于亚马逊,它能够抓取任何网站的数据,哪怕是那些需要JavaScript渲染的复杂网站。

2024-05-07 11:43:01 285

原创 Linux|awk 特殊模式“BEGIN 和 END”

当脚本执行到BEGIN模式时,BEGIN下的所有操作会被执行一遍,这发生在读取任何输入行之前。然后,Awk会将指定的非特殊模式与输入行逐一进行匹配,一旦匹配成功,就会执行该模式下的所有操作。在读取文件中的任何输入行之前,BEGIN特殊模式会先帮助我们输出信息:“域名tecmint.com在文件中出现的次数为:”。BEGIN模式:指的是在读取任何输入行之前,Awk会先执行BEGIN下指定的所有操作一次。,我们将介绍Awk的更多特性,特别是两个特殊的模式:BEGIN和END。接下来,我们的正则表达式模式。

2024-04-29 14:18:53 1220

原创 Python网络数据抓取(3):Beautiful Soup

不过在此之前,我们需要先将这些数据导入到我们的文件中。但如果你只需要 4.9 部分,并且想要删除所有多余的文本,那么我们将使用 python 的 split 函数。从我们的目标页面中,我们将提取一些重要数据,例如名称、价格和产品评级。我们利用requests库发送GET请求,成功地从第一部分获取的杂乱HTML中提取出了所有必需的数据。通过检查价格,我可以看到价格存储在屏幕外的类中,而该类存储在priceToPay 类中。正如你所看到的,我们得到了产品的名称。所以,当我们打印这个时,我们得到了这个。

2024-04-28 10:56:41 374

原创 基因组组装:NextDenovo2 使用大全

在性能对比测试中,我们将NextDenovo与其它几种组装工具进行了比较,测试所用的数据包括来自人类和果蝇的Oxford Nanopore长序列读取,以及来自拟南芥的PacBio连续长序列读取(CLR)。此外,NextDenovo在组装的一致性和单个碱基的精确度上也展现出了较高的准确性水平。在序列中,如果出现连续的小写字母的区域,则意味着该处的连接可能不够稳定。选项可以提升程序运行速度至原来的1.5至2倍,但这可能会略微牺牲校正的准确度,默认情况下此功能是关闭的。对于高度杂合的基因组,可以尝试设置。

2024-04-27 19:53:09 1041

原创 Linux|Awk 变量、数字表达式和赋值运算符

同样,数字 22 被赋予了变量 port_no,还可以把一个变量的值赋给另一个变量,就像最后一个例子中,将变量 computer_name 的值赋给了变量 server。例如,假设有一个名为 names.txt 的文件,该文件列出了一个应用程序的用户的名单,包括他们的名、姓和性别。要理解在 Awk 中数值表达式的运用,来看下面的例子,这个例子中用到了一个名为 domains.txt 的文件,这个文件列出了 Tecmint 所持有的所有域名。接下来,将探讨 Awk 的最后一个特性——赋值运算符。

2024-04-25 14:51:04 710 3

原创 单细胞分析|整合 scRNA-seq 和 scATAC-seq 数据

在下文中展示了如何进行细胞数据的共同嵌入,并再次强调,这仅用于示范,特别是在本案例中,scRNA-seq和scATAC-seq的数据实际上是从同一批细胞中获得的。为了在单细胞RNA测序(scRNA-seq)和单细胞ATAC测序(scATAC-seq)实验之间找到相互关联的“锚点”,首先利用Signac软件包中的GeneActivity()函数,通过计算2kb启动子区域和基因体内的ATAC-seq测序计数,来估算每个基因的转录活性。分别导入RNA和ATAC的数据,并假设这两组数据是分别在不同的实验中获得的。

2024-04-24 16:23:49 443 1

原创 Python网络数据抓取(3):Requests

在这里,我们声明了一个 target_url 变量,用于存储来自 amazon.com 的目标网址。然后我们声明了一个标头,最后我们向目标 URL 发出了 GET 请求。当我们打印状态时,我们得到的状态为 200,这意味着我们能够成功抓取亚马逊。您甚至可以打印我们从亚马逊收到的 HTML 代码,只需将 status_code 替换为文本即可。在这一部分,我们将探讨Python的requests库,并且利用这个库来进行网页数据抓取。接下来,我们通过一个简单的网页抓取实例来说明如何应用这个库。

2024-04-22 21:50:52 456

原创 基因组组装:Hifiasm 使用教程

Hifiasm 可以生成单样本端粒到端粒的组装,结合了 HiFi、超长和 Hi-C 读取,可以说是最好的组装软件之一。prefix.p_utg.gfa: 经过处理的单倍型解析单元图谱,图中去除了可能由基因突变或数据噪声造成的小气泡,这些小气泡并不代表真实的单倍型信息。prefix.hap.p_ctg.gfa: 带有相位信息的连续片段图谱,它保留了具有相位标记的连续片段。prefix.p_ctg.gfa: 主要连续片段的图谱,它整合了一个包含长期阶段区块的完整组装结果。参数会影响这一处理过程的具体结果。

2024-04-11 16:27:16 727

原创 scRAN-seq|加权最近邻分析(2)

在2021年发表于《Cell》杂志的一篇论文中,提出了一种名为‘加权最近邻’(WNN)的分析方法,这是一种无需监督的学习框架,它能够评估每种数据类型对每个细胞的具体贡献,从而实现对多种数据类型的综合分析。配对数据提供了一个独特的机会,可以识别满足多个标准的转录因子(TFs),有助于将潜在调控因子的列表缩小到最有可能的候选者。找到了一些已经建立的调控因子,包括 NK 细胞的 TBX21,浆细胞的 IRF4,造血祖细胞的 SOX4,B 细胞的 EBF1 和 PAX5,pDC 的 IRF8 和 TCF4。

2024-04-10 14:57:28 420

原创 Linux|从 STDIN 读取 Awk 输入

在第一个示例中,将 dir -l 命令的输出作为 Awk 的输入数据,以此来打印出当前目录下文件的所有者用户名、所属组名,以及该用户拥有的文件列表。当您使用模式 tech 运行命令时,因为没有那种类型的交易,所以什么都不会打印出来,但是使用 Tech 时,您会得到类型为 Tech 的交易。您可以随时使用另一个命令的输出作为 awk 的输入,而不是从文件中读取输入,这就像在上面的例子中所看到的那样,非常简单。在本文中,将介绍几个示例,展示如何使用 Awk 来过滤其他命令的输出,而不仅仅是读取文件内容。

2024-04-08 09:46:47 493

原创 Python网络数据抓取(2):HTTP Headers

Accept-Language 头则是用来告诉服务器,客户端能够理解响应内容的语言,例如这里的 en-us 表示英语(美国)。在网络通信中,请求头就相当于信封上的地址标签,它告诉服务器数据要发送到哪里,同时也提供了一些额外的信息,以便在数据无法正常送达时能够找到正确的处理方式。就像您定义 API 的请求和响应结构的方式一样,您也可以实现服务器接受的自定义头部,或者您自己定义的自定义头部。接下来,本文会向大家阐述 HTTP 请求中的“请求头”(headers)的概念,并通过实例来帮助大家理解。

2024-04-07 13:12:04 483

原创 大型语言模型(LLMs)面试常见问题解析

Token 的类型:Token 可以代表整个单词或者它们的一部分。例如,单词 “ hamburger ” 被切分成三个 token:“ ham, ” “ bur, ” 和 “ ger. ”。想象一下将 “ hamburger ” 分解成像 “ ham ” 和 “ burger ” 这样的片段。根据 OpenAI 的介绍,这意味着大约 ¾ 的单词数量(即 100 个 token 大约相当于 75 个单词)。带空格的开始:有些 token 的开头带有空格,比如“hello”或“bye”。

2024-04-06 13:51:42 416

原创 scRAN-seq|加权最近邻分析(1)

由于每种测量方式所含信息量的差异,即便是在同一组数据中的不同细胞间,也给多模态数据的分析与整合带来了挑战。在2021年发表于《Cell》杂志的一篇论文中,提出了一种名为‘加权最近邻’(WNN)的分析方法,这是一种无需监督的学习框架,它能够评估每种数据类型对每个细胞的具体贡献,从而实现对多种数据类型的综合分析。这一过程中,为每个细胞分配了特定的模态权重,并识别了它们的多模态邻居。发现,在识别祖细胞状态方面,RNA 分析比 ADT 分析提供了更多的信息(ADT 面板包含了用于识别分化细胞的标记)。

2024-04-05 10:26:06 633

原创 Linux| Awk 中“next”命令奇用

如果符合这个条件,这条记录就会被打印出来,并且在行尾加上 (*) 符号,这一步骤通过表达式 $4 <= 20 来实现。接下来,命令会判断每一行的第四个数据是否大于 20,如果是的话,这条记录也会被打印出来,这一步是通过另一个表达式 $4 > 20 来完成的。想象一下执行这样一个命令:它会在每一行的末尾加上 (*) 符号,这样做是为了标出那些数量不超过 20 的食品项目。next 命令对于提高命令的执行效率至关重要,当需要时,它可以显著加快脚本的运行速度。命令来跳过剩余的模式和表达式,读取下一行输入的方法。

2024-04-04 13:28:43 390

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除