<?xml version='1.0' encoding='utf-8'?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>kusurin.blog</title><id>https://kusurin-tech.icu/blog/</id><link href="https://kusurin-tech.icu/blog/" rel="alternate" /><link href="https://kusurin-tech.icu/blog/atom.xml" rel="self" type="application/atom+xml" /><updated>2026-10-06T20:13:28.342Z</updated><author><name>kusurin</name></author><entry><title>踩坑日记[2026]</title><id>https://kusurin-tech.icu/blog/2026/09/24/its-a-trap-2026/</id><link href="https://kusurin-tech.icu/blog/2026/09/24/its-a-trap-2026/" rel="alternate" /><published>2026-09-24T15:34:33.000Z</published><updated>2026-10-06T20:10:13.927Z</updated><summary type="text">杂项
 [2025-09]莱卡thunder显微镜载玻片平面和焦平面不一致
 有时候发现切片上下不在一个焦平面，有时候又好了。
 后来发现是放载玻片的架子和底座装配时需要需要装好一个如图的卡扣：</summary></entry><entry><title>小爱音箱万能遥控版改AUX输入方案</title><id>https://kusurin-tech.icu/blog/2026/09/21/mi-speaker-aux-in/</id><link href="https://kusurin-tech.icu/blog/2026/09/21/mi-speaker-aux-in/" rel="alternate" /><published>2026-09-21T15:34:00.000Z</published><updated>2026-10-06T20:13:28.342Z</updated><summary type="text">前言
 买的小爱音箱万能遥控版作为智能家居的中枢，本来也想兼做音箱，但是启用mesh蓝牙网关后，音箱的蓝牙音频功能就被禁用了。
 在网上看到了很多小爱音箱改AUX输入的方法，但是没有人详细讲过万能遥控版的改法。
 改装方法
 改AUX输入基本都是加装AUX母口连到功放IC或其之前，万能遥控版的功放IC是AD51652。查询引脚定义尝试使用INP、INN和GND发现底噪很大。
 
 在此处找到某位大</summary></entry><entry><title>踩坑日记[2025]</title><id>https://kusurin-tech.icu/blog/2025/06/06/its-a-trap-2025/</id><link href="https://kusurin-tech.icu/blog/2025/06/06/its-a-trap-2025/" rel="alternate" /><published>2025-06-06T06:13:31.000Z</published><updated>2025-06-06T12:58:28.310Z</updated><summary type="text">数据处理
 [2025-01-13]FFmpeg在使用filter后默认输出的码率降低？
 在使用如下filter(crop)而不指定码率时，偶然发现输出糊了很多，再仔细看输出的码率降低了很多，或许需要使用-b:v 12000k之类的指定码率。
 1for %f in (*.*) do ffmpeg -i "%f" -filter:v "crop=iw*(10/10):ih*(3/10):iw:i</summary></entry><entry><title>踩坑日记[生信等][2025]</title><id>https://kusurin-tech.icu/blog/2025/05/17/its-a-trap-bioinfo-2025/</id><link href="https://kusurin-tech.icu/blog/2025/05/17/its-a-trap-bioinfo-2025/" rel="alternate" /><published>2025-05-17T03:36:41.000Z</published><updated>2025-05-18T00:14:17.098Z</updated><summary type="text">[2025-02-24]seurat
 V5对象转adata对象
 据说对于V4和之前的版本，SeuratDisk可以用，V5则要转回V3的assay。
 还有另一个包SCP，里面的srt_to_adata()中，特征元信息用的变量名是meta.features，但根据这个issue，Assay5对象的特征元信息变量名也改成了meta.data，需要改一下源码里的变量名。
 还有另一个问题，目前这</summary></entry><entry><title>简述抗G紧张动作中的Valsalva动作</title><id>https://kusurin-tech.icu/blog/2025/05/16/Valsalva-in-AGSM/</id><link href="https://kusurin-tech.icu/blog/2025/05/16/Valsalva-in-AGSM/" rel="alternate" /><published>2025-05-16T08:05:43.000Z</published><updated>2025-05-19T12:21:59.650Z</updated><summary type="text">Valsalva动作
 在贺银成的内科学中提到过Valsalva动作，它是"用中等力度的呼气动作以克服闭嘴、捏鼻、屏气时的气道关闭阻力，像吹气球一样用力"，共经历4个时相：
 
 吸气
 屏气
 突然松开声门
 阻力完全消除
 
 在前面，腹膜腔内压和胸膜腔内压升高，而在第4时相突然降低，导致回心血量增加，主动脉压力增加，会引起迷走神经张力增加，降低心率和血压，从而终止室上性心动过速。
 Vals</summary></entry><entry><title>工程学奇迹x</title><id>https://kusurin-tech.icu/blog/2025/04/26/engineering-wonders/</id><link href="https://kusurin-tech.icu/blog/2025/04/26/engineering-wonders/" rel="alternate" /><published>2025-04-26T11:45:21.000Z</published><updated>2025-04-28T08:56:02.058Z</updated><summary type="text">拯救者电源接口接触不良维修
 网上大多说是因为散热设计不佳，导致充电口公头损坏，但是有时候扭一下接口就能充电，所以可能单纯是触点问题，也有可能只是因为我的没有那么病入膏肓。
 拯救者电源接口母口的结构如下：
 
 此时我的触点①、③都已经感觉有点往内弯曲看不到了，并且很松，怀疑是他们的问题。
 猜测：
 
 ①用于固定
 ②、③是电源触点
 
 ②又根本碰不着，因此试着将③用针状塑料往外挑开，插上</summary></entry><entry><title>ktplotspy绘制CellphoneDB结果弦图时tmpdf.index = complex_id处出现ValueError: Length mismatch</title><id>https://kusurin-tech.icu/blog/2025/03/19/ktplotspy-chord-length-mismatch/</id><link href="https://kusurin-tech.icu/blog/2025/03/19/ktplotspy-chord-length-mismatch/" rel="alternate" /><published>2025-03-19T12:42:05.000Z</published><updated>2025-05-19T00:42:14.664Z</updated><summary type="text">报错内容
 
 
 完整报错示例
 
 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354---------------------------------------------------------------------------ValueE</summary></entry><entry><title>更换Colab的Python版本</title><id>https://kusurin-tech.icu/blog/2025/03/11/change-colab-python-version/</id><link href="https://kusurin-tech.icu/blog/2025/03/11/change-colab-python-version/" rel="alternate" /><published>2025-03-11T05:51:57.000Z</published><updated>2025-03-11T10:05:48.042Z</updated><summary type="text">引言
 Colab团队十分自负x，除了在更新Python版本时提供上一个版本的Python，目前没有使用3.11以外版本的选项。
 但是有一些包可能不支持特定的Python版本，这就麻烦大了。
 主要参考这个回答，目前能够成功降级。
 更换Python版本
 这里选择降级到Python3.9。
 在提示重启的时候重启。
 12345678910111213141516171819!sudo apt</summary></entry><entry><title>一种通过steam用手柄模拟速度可调的鼠标滚轮的方法</title><id>https://kusurin-tech.icu/blog/2025/03/04/controller-joystick-to-mousewheel/</id><link href="https://kusurin-tech.icu/blog/2025/03/04/controller-joystick-to-mousewheel/" rel="alternate" /><published>2025-03-04T08:32:25.000Z</published><updated>2025-03-15T12:51:22.146Z</updated><summary type="text">主要用于桌面模式。
 方法A
 核心是摇杆-右摇杆行为设置为十字键，设置里选择模拟信号模拟、模拟信号模拟脉冲时间：500，然后比如上键设置为滚轮上（长按），下键设置为滚轮下（长按），设置里选按住以重复：开启、按压时间：0ms、重复速度：40，这个速度调小的话，实际的速度会增加。
 做好的布局在这里
 方法B
 如果嫌不够快、不够灵敏，还有一种方法：
 摇杆-右摇杆行为设置为十字键，设置里选择模拟信</summary></entry><entry><title>基因富集分析（SPIA）</title><id>https://kusurin-tech.icu/blog/2025/02/22/gene-enrich-spia/</id><link href="https://kusurin-tech.icu/blog/2025/02/22/gene-enrich-spia/" rel="alternate" /><published>2025-02-22T06:14:20.000Z</published><updated>2025-03-13T12:45:59.202Z</updated><summary type="text">引言
 一般来说，使用GO和KEGG数据库对差异基因进行基因富集分析，多是
 
 ORA：基于对特定组内外（如通路）的差异基因、背景基因数量进行检验，看组内外的差异基因是否随机分布。比如ClusterProfiler包中的enrichGO()和enrichKEGG()
 GSEA：差异基因按log2FoldChange降序排序后，顺序遍历，按差异基因是否在特定组（如通路）内进行加减分，并进行检验，</summary></entry><entry><title>对小鼠脑组织进行空间转录组学分析</title><id>https://kusurin-tech.icu/blog/2025/02/17/spatial-transcriptomics-demo/</id><link href="https://kusurin-tech.icu/blog/2025/02/17/spatial-transcriptomics-demo/" rel="alternate" /><published>2025-02-17T14:43:26.000Z</published><updated>2025-03-12T13:59:52.574Z</updated><summary type="text">引言
 附：基于barcode的空转原理
 把特定barcode结合到特定位置，其末端是可以与mRNA结合的polyT序列。将切片透化，让其mRNA与barcode结合，在原位合成cDNA，通过NGS就能得到每个mRNA和其barcode，通过barcode又能映射回其位置。
 相较于其它方法，这种方法的优势在于同时兼顾速度、精度和全转录组测序等。在精度上，基于FISH和原位测序的方法可以做到光学</summary></entry><entry><title>对PBMC进行scATAC-seq分析</title><id>https://kusurin-tech.icu/blog/2025/02/13/ATACseq-on-PBMC/</id><link href="https://kusurin-tech.icu/blog/2025/02/13/ATACseq-on-PBMC/" rel="alternate" /><published>2025-02-13T13:43:29.000Z</published><updated>2025-03-11T08:00:58.038Z</updated><summary type="text">ATAC-seq的原理可以通过这个视频简单了解，在染色质开放区域，转座事件更容易发生，产生更多片段，形成peak。
 
 通过scATAC-seq分析，我们可以得出，例如，不同条件下染色质开放区域的差异，高度开放区域可能为活跃转录的基因。
 这里使用Seurat V5和signac对PBMC进行scATAC-seq分析，原始代码见signac文档。
 数据导入
 
 peak-细胞计数矩阵
 元数</summary></entry><entry><title>ML入门</title><id>https://kusurin-tech.icu/blog/2025/01/31/ML-induction/</id><link href="https://kusurin-tech.icu/blog/2025/01/31/ML-induction/" rel="alternate" /><published>2025-01-31T13:09:34.000Z</published><updated>2025-03-11T08:00:14.893Z</updated><summary type="text">线性回归
 引言
 在中学就学习过，一元线性回归中，对于某组常数项和回归系数，有评价标准  使用最小二乘法（正规方程）可以使其最小，此时 
 多元线性回归
 损失函数
 类似地，多元线性回归中，对于个样本的个特征  以及一组回归系数，有相同的评价标准，为了去掉样本规模的影响除以，定义损失函数 
 正规方程
 同样可以使用正规方程，求解使得最小。 
 
 
 标量对向量的求导方法
 
  或  依据</summary></entry><entry><title>在UEFI+GPT的windows+linux双系统中卸载Linux</title><id>https://kusurin-tech.icu/blog/2025/01/19/uninstall-linux-on-windows-double-system/</id><link href="https://kusurin-tech.icu/blog/2025/01/19/uninstall-linux-on-windows-double-system/" rel="alternate" /><published>2025-01-19T11:34:28.000Z</published><updated>2025-01-22T07:48:14.146Z</updated><summary type="text">前言
 之前看到好多人说自己卸载win+linux双系统的linux之后，启动项、引导之类的都坏了，但是在了解UEFI+GPT和Legacy+MBR的区别后，如果自己的双系统是在UEFI引导模式+GPT分区表格式的，那不用担心，出问题的多是Legacy+MBR。
 UEFI+GPT
 UEFI+GPT需要一个存放引导启动文件的fat分区，名字可能叫做ESP、System_DRV、EFI等，我的这个</summary></entry><entry><title>一些胡思乱想</title><id>https://kusurin-tech.icu/blog/2025/01/04/mathmeth/</id><link href="https://kusurin-tech.icu/blog/2025/01/04/mathmeth/" rel="alternate" /><published>2025-01-04T12:34:49.000Z</published><updated>2025-01-25T14:15:46.223Z</updated><summary type="text">将二元数映射到一元数
 给定一个二元数，其中的整数部分依次为数列，小数部分依次为数列，同理的整数部分为数列，小数部分为数列。
 可以构造出与其唯一对应的一元数：的整数部分有一分隔标记，其左方为逆序的数列，右方为正序的数列，小数部分同理。
 （内心OS：这样二元数不就和一元数一样多了么（没学好）
 结果还真一样多，别人的构造方法还漂亮多了：小数部分的第位为，第位为，整数部分同理。
 证明：有无穷多个</summary></entry><entry><title>踩坑日记[生信等][2024]</title><id>https://kusurin-tech.icu/blog/2024/12/30/its-a-trap-bioinfo-2024/</id><link href="https://kusurin-tech.icu/blog/2024/12/30/its-a-trap-bioinfo-2024/" rel="alternate" /><published>2024-12-30T03:36:41.000Z</published><updated>2025-02-14T10:37:40.832Z</updated><summary type="text">scRNA-seq(R)
 [2024-07-25]Rstudio
 server的Python venv配置
 有时候安装设置完之后即使看到配置成功了，但是还是无效，试着重启一下吧。
 [2024-12-15]Read10x()在Seurat
 V5中新功能的表现（多数据库报错）
 在V5中，Read10x()可以读取一个目录的列表，直接整合成一个表达矩阵，但是实测在遇到基因没法对应的多个样本时</summary></entry><entry><title>所谓“海关商品溯源”系统简析</title><id>https://kusurin-tech.icu/blog/2024/12/28/anti-pirate-3F/</id><link href="https://kusurin-tech.icu/blog/2024/12/28/anti-pirate-3F/" rel="alternate" /><published>2024-12-28T08:12:54.000Z</published><updated>2025-02-14T10:37:39.017Z</updated><summary type="text">引言
 最近购买了某商品，其上贴有所谓“海关商品溯源”系统贴纸，使用方法大致如下：
 
 扫描二维码获取url进入系统
 输入涂层下口令的末位并验证
 
 但是发现其url包含了所需输入口令的一部分，也就是说它本来就藏在二维码中。
 尝试更改url，即可构造出任意密码皆可查询成功的url。
 并且可以更改成使原密码无效的url。
 简析
 查询界面url结构为通用段A+口令末位，服务器根据此返回整</summary></entry><entry><title>踩坑日记[2024]</title><id>https://kusurin-tech.icu/blog/2024/12/26/its-a-trap-2024/</id><link href="https://kusurin-tech.icu/blog/2024/12/26/its-a-trap-2024/" rel="alternate" /><published>2024-12-26T11:35:54.000Z</published><updated>2025-01-25T14:03:30.009Z</updated><summary type="text">HTML
 [2024-04-23]GIF的播放
 整个html的GIF播放都是同步的，无法做到css动画异步播放的效果。
 
 JavaScript
 [2024-03]VUE3生命周期中setup()的位置
 VUE的生命周期中，setup()在created()之前，在VUE2中尚可设置延时使setup()能够使用methods()和data，但VUE3已经完全禁止了这一点，将this指向u</summary></entry><entry><title>复现：Single-cell and spatial atlases of spinal cord injury in the Tabulae Paralytica</title><id>https://kusurin-tech.icu/blog/2024/08/01/reproduce-10-1038-slash-s41586-024-07504-y/</id><link href="https://kusurin-tech.icu/blog/2024/08/01/reproduce-10-1038-slash-s41586-024-07504-y/" rel="alternate" /><published>2024-08-01T05:52:59.000Z</published><updated>2025-05-18T00:08:59.351Z</updated><summary type="text">snRNA-seq
 数据概览桑基图
 大概是实验设计如此，并没有找到哪个数据包含了实验组条件对应的损伤模型、损伤后取样时间，在文中也没有显式提及，找了几个隐晦提及的地方：
 
 b, Susceptible and resilient subtypes of spinal
 cord neurons. Volcano plot shows log2 odds ratios comparing n</summary></entry><entry><title>单细胞数据挖掘</title><id>https://kusurin-tech.icu/blog/2024/05/22/single-cell-data-mining/</id><link href="https://kusurin-tech.icu/blog/2024/05/22/single-cell-data-mining/" rel="alternate" /><published>2024-05-22T15:14:26.000Z</published><updated>2025-03-13T12:45:39.231Z</updated><summary type="text">案例里用了《Glioblastoma cell differentiation trajectory predicts the
 immunotherapy response and overall survival of
 patients》，主要是使用scRNA-seq（单细胞RNA测序）和bulk
 RNA-seq（整体RNA测序）来找出GBM分化相关基因然后预测患者总生存期之类的。
 实验</summary></entry></feed>