linux上安裝methylkit -- 安全下車版 (正經版: Linux環境下安裝methylKit的實踐與避坑指南)

題外話:
我踩過的坑,都將成為我寫貼的素材!(ㄒoㄒ)
整整安裝了兩天,這里面的滋味懂的都懂。

希望開發作者持續維護。
希望有人或者作者持續打包成sigularity鏡像使用,并且直接傳到github上,傳到docker上下載到linux上也好困難啊(ㄒoㄒ) ,這樣就不會吃conda安裝的苦了。

核心思想:

  1. 用mamba 或者conda 安裝,這樣依賴包都同時安裝好了。
  2. 網要好。我的實踐是早上網最好,比如7-9點時,我的下載網速最高能達到1.2M/s (因為就算設了清華源等國內源,還是有一部分需要鏈接到國外網址的,這個時候網速就十分受限。所以需要與國外上班族錯峰使用。)
    安裝過程中出現這個報錯就是網不好造成的。👉conda或mamba install 相關軟件報錯
  3. 安裝data.table版本為1.14.8
安裝過程中報錯
Error: package or namespace load failed for 'methylKit':object 'key<-' is not exported by 'namespace:data.table'

詳細解釋看后續部分內容。
解決辦法就是安裝data.table到1.14.8或更低版本。👉2025.06.23【甲基化】|methylKit常見疑難解答與實用技巧(FAQ)
但是博主的方法我用了不成功,所以這里提供另一種方法。

正式開始:

  1. 創建環境并安裝所需包,部分細節看👉被迫在linux上用R(真的很難用啊)之如何在linux上正常使用R
mamba create -n methylkit_5 -c bioconda -c conda-forge bioconductor-methylkit bioconductor-genomation r-data.table=1.14.8 -y

bioconductor-methylkit 必須安裝
bioconductor-genomation 是為了后續將差異甲基化位點注釋到基因組上
r-data.table=1.14.8 必須指定版本安裝,讓mamba自動匹配合適的methylkit和genomation。(這就是我說的另一種方法,從安裝的時候就指定版本,這是我折騰最久的地方,不多說了。)

安裝關鍵過程:

+ bioconductor-methylkit                   1.28.0  r43hf17093f_1         bioconda        Cached
+ bioconductor-genomation                  1.34.0  r43hf17093f_1         bioconda        Cached
+ r-base                                    4.3.3  h65010dc_18           conda-forge     Cached
+ r-data.table                             1.14.8  r43h029312a_2         conda-forge     Cache...
Downloading and Extracting Packages:Preparing transaction: done
Verifying transaction: done
Executing transaction: doneTo activate this environment, use$ mamba activate methylkit_5To deactivate an active environment, use$ mamba deactivate

這里不禁要提一下原作者github上的issue部分:
原鏈接👉添加鏈接描述
防止有人打不開,這里再附一張截圖
在這里插入圖片描述
這里作者解釋了,這個報錯就是因為data.table更新了,新版本刪除了一個函數。作者修復了這一報錯,并建議從R版本為4.4的Bioconductor下載1.32.1版本的methylKit。(原文自己細看,這里是我的理解。)

但是bioconda里的版本截至到目前只更新到1.32.0(2025/8/29),這意味著linux上安裝methylkit建議還是安裝data.table的舊版本(1.14.8),methylkit安裝的版本也是舊版本,比如1.28.0。同時,也意味著,如果在電腦本地安裝,可以將R升級到4.4版本,然后Bioconductor就可以安裝methylkit的最新版本了。
在這里插入圖片描述
(nigiord的源可能不靠譜,不建議嘗試,頭鐵也可以試試安裝看下有沒有問題。)

  1. 檢測是否安裝成功

① 激活環境
mamba activate methylkit_5
② 打開R
直接命令行中輸入R,進入R
輸入.libPaths() #查看當前R包路徑
臨時改成該環境methylkit_5的R包路徑

.libPaths(c("/storage2/zuozhe/mambaforge/envs/methylkit_5/lib/R/library", .libPaths()))

這里每個人的路徑都不一樣,如果不確定可以去翻mambaforge/envs/methylkit_5/lib/R/library
就能得到自己的絕對路徑了。
③ library對應包,如果沒出現報錯說明就安裝成功了,正常使用。

(methylkit_5) zuozhe@server:~$ RR version 4.3.3 (2024-02-29) -- "Angel Food Cake"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: x86_64-conda-linux-gnu (64-bit)R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> .libPaths()
> .libPaths(c("/storage2/zuozhe/mambaforge/envs/methylkit_5/lib/R/library", .libPaths()))
> library(methylKit)
Loading required package: GenomicRanges
Loading required package: stats4
Loading required package: BiocGenericsAttaching package: 'BiocGenerics'The following objects are masked from 'package:dplyr':combine, intersect, setdiff, unionThe following objects are masked from 'package:stats':IQR, mad, sd, var, xtabsThe following objects are masked from 'package:base':Filter, Find, Map, Position, Reduce, anyDuplicated, aperm, append,as.data.frame, basename, cbind, colnames, dirname, do.call,duplicated, eval, evalq, get, grep, grepl, intersect, is.unsorted,lapply, mapply, match, mget, order, paste, pmax, pmax.int, pmin,pmin.int, rank, rbind, rownames, sapply, setdiff, sort, table,tapply, union, unique, unsplit, which.max, which.minLoading required package: S4VectorsAttaching package: 'S4Vectors'The following objects are masked from 'package:dplyr':first, renameThe following object is masked from 'package:utils':findMatchesThe following objects are masked from 'package:base':I, expand.grid, unnameLoading required package: IRangesAttaching package: 'IRanges'The following objects are masked from 'package:dplyr':collapse, desc, sliceLoading required package: GenomeInfoDbAttaching package: 'methylKit'The following object is masked from 'package:dplyr':select> library(genomation)
Loading required package: gridAttaching package: 'genomation'The following objects are masked from 'package:methylKit':getFeatsWithTargetsStats, getFlanks, getMembers,getTargetAnnotationStats, plotTargetAnnotationWarning message:
replacing previous import 'Biostrings::pattern' by 'grid::pattern' when loading 'genomation'

④ 如果library過程或者運行methylkit中報錯了缺啥包,就缺啥包再安裝啥包 (Warning message 影響不大)。這種情況沒什么更好的經驗,可以嘗試在R中直接安裝,也可以在bioconda中找到對應的包安裝,再重新library。如果折騰來折騰去都沒成功,建議重新建個環境,加上所需的包,比如我的就要求加上dplyr包,所以最終我的命令是:

mamba create -n methylkit_5 -c bioconda -c conda-forge bioconductor-methylkit bioconductor-genomation r-data.table=1.14.8 r-dplyr -y

目前就是這樣,研究methylkit命令去了。沒看到最后不知道還有個最終命令吧。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95021.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95021.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95021.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【leetcode】114. 二叉樹展開為鏈表

文章目錄題目題解1. 遞歸2. 迭代3. 右指針重排&#xff0c;始終將右子樹添加到左子樹的最右題目 114. 二叉樹展開為鏈表 題解 1. 遞歸 先序遍歷然后將數組操作 for i in range(1, len(res)):prev, curr res[i - 1], res[i]prev.left Noneprev.right curr# Definition fo…

Vibe Coding、AI IDE/插件

概述 Vibe Coding&#xff0c;氛圍編程&#xff0c;AI輔助編程&#xff0c;三劍客&#xff1a; Google Gemini&#xff1a;OpenAI GPT&#xff1a;Anthropic Claude&#xff1a; IDE Cursor 基于VS Code開發。 特性&#xff1a; AI驅動的代碼生成&#xff1a;輸入想要的…

Unity高級UI拖動控制器教程

在游戲開發過程中&#xff0c;UI組件的拖動功能是一個常見的需求。特別是在需要實現拖動、邊界檢測、透明度控制以及動畫反饋等功能時&#xff0c;編寫一個高級UI拖動控制器將非常有用。在本文中&#xff0c;我們將創建一個支持多種Canvas模式和更精確邊界檢測的高級UI拖動控制…

零基礎上手:Cursor + MCP 爬取 YouTube 視頻數據

前言 大模型與 AI 應用越來越普及的今天&#xff0c;實時、穩定地獲取網絡數據變得尤為重要。無論是做內容分析、趨勢研究還是自動化任務&#xff0c;爬取和處理數據始終是繞不開的一環。 傳統爬蟲往往面臨封禁、驗證碼、動態渲染等難題&#xff0c;而 Bright Data MCP&#x…

frp 一個高性能的反向代理服務

文章目錄項目概述核心特性系統架構快速開始1. 下載安裝2. 服務端快速配置3. 客戶端快速配置4. 驗證連接配置文件說明代理類型TCP/UDP 代理HTTP/HTTPS 代理安全代理 (STCP/SUDP)P2P 代理 (XTCP)插件系統靜態文件服務HTTP/SOCKS5 代理協議轉換使用場景遠程辦公Web 服務發布游戲服…

Android -第二十一次技術總結

一、activity與Fragment的通信有哪些&#xff1f;使用接口進行通信的邏輯與代碼示例使用接口通信的核心是解耦&#xff0c;通過定義一個接口作為通信契約&#xff0c;讓 Fragment 不依賴于具體的 Activity 類型。1. 定義通信接口&#xff08;在 Fragment 內&#xff09;首先&am…

【算法】78.子集--通俗講解

通俗易懂講解“子集”算法題目 一、題目是啥?一句話說清 給你一個不含重復元素的整數數組,返回所有可能的子集(包括空集和它本身)。 示例: 輸入:nums = [1,2,3] 輸出:[[], [1], [2], [1,2], [3], [1,3], [2,3], [1,2,3]] 二、解題核心 使用回溯法(遞歸)或位運算來…

Cherrystudio的搭建和使用

1、下載和安裝 Cherry Studio 官方網站 - 全能的 AI 助手 2、配置LLM 3、聊天助手 3.1 添加和編輯助手 3.2 選擇LLM 3.3 對話聊天 4、配置MCP 4.1 安裝MCP執行插件 4.2 安裝 node和npm Node.js — Download Node.js npm -v 10.9.3 node -v v22…

基于Matlab結合膚色檢測與卷積神經網絡的人臉識別方法研究

近年來&#xff0c;隨著人工智能與計算機視覺技術的發展&#xff0c;人臉識別在人機交互、安防監控、身份認證等領域得到了廣泛應用。本文提出了一種基于 MATLAB 平臺&#xff0c;結合 膚色檢測與卷積神經網絡&#xff08;CNN&#xff09; 的人臉識別方法。該方法首先利用膚色模…

在八月點燃AI智慧之火:CSDN創作之星挑戰賽開啟靈感盛宴

在八月點燃AI智慧之火&#xff1a;CSDN創作之星挑戰賽開啟靈感盛宴八月驕陽似火&#xff0c;智能時代的技術熱情同樣熾熱。在這個充滿創新活力的季節&#xff0c;「AIcoding八月創作之星挑戰賽」正式拉開帷幕&#xff0c;為CSDN的創作者們打造一個展示才華、碰撞靈感的專業舞臺…

解密 Vue 3 shallowRef:淺層響應式 vs 深度響應式的性能對決

&#x1f4d6; 概述 shallowRef() 是 Vue 3 中的一個組合式 API 函數&#xff0c;用于創建淺層響應式引用。與 ref() 不同&#xff0c;shallowRef() 只在其 .value 被直接替換時觸發響應式更新&#xff0c;不會深度監聽對象內部屬性的變化。 &#x1f3af; 基本概念 什么是 sh…

Linux進程間通信(IPC)深入解析

Linux進程間通信&#xff08;IPC&#xff09;深入解析 1 概述 Linux 進程間通信 (Inter-Process Communication, IPC) 是不同進程之間交換數據與同步操作的機制。現代 Linux 內核提供了多種 IPC 方式&#xff0c;從傳統的管道和 System V IPC 到現代的套接字和 D-Bus&#xff0…

TensorFlow-GPU版本安裝

前言&#xff1a; &#xff08;1&#xff09;因項目需求&#xff0c;需要安裝TensorFlow-GPU版本&#xff0c;故本文在此記錄安裝過程。 &#xff08;2&#xff09;有注釋&#xff0c;優先看注釋 &#xff08;3&#xff09;本文所使用的GPU為NVIDIA GeForce RTX 5080 Laptop GP…

Elasticsearch 索引字段刪除,除了 Reindex 重建索引還有沒有別的解決方案?

unsetunset1、問題來源unsetunset在生產環境維護 Elasticsearch 集群的過程中&#xff0c;經常會遇到這樣的場景&#xff1a;業務需求變更導致某些字段不再使用&#xff0c;或者早期設計時添加了一些冗余字段&#xff0c;現在需要清理掉。最近球友在公司的一個項目中就遇到了這…

Ubuntu虛擬機磁盤空間擴展指南

這是一份詳細且易于理解的 Ubuntu 虛擬機磁盤空間擴展指南。本指南涵蓋了兩種主流虛擬機軟件&#xff08;VirtualBox 和 VMware&#xff09;的操作步驟&#xff0c;并分為 “擴展虛擬磁盤” 和 “在 Ubuntu 內部分配新空間” 兩大部分。重要提示&#xff1a;在進行任何磁盤操作…

教程1:用vscode->ptvsd-創建和調試一個UI(python)-轉載官方翻譯(有修正)

vscode用python開發maya聯動調試設置 3dsMax Python開發環境搭建 3文聯動之debugpy調試max‘python. 3文聯動之socket插槽注入max‘python 本教程是max主動接收創建代碼的方式&#xff08;預先運行界面&#xff0c;通過按鈕主動讀取py腳本&#xff0c;執行斷點&#xff09;&…

龍迅#LT7621GX適用于兩路HDMI2.1/DP1.4A轉HDMI2.1混切應用,分辨率高達8K60HZ!

1. 描述LT7621GX是一款高性能兩路HDMI2.1/DP1.4轉HDMI2.1混合開關芯片&#xff0c;用于顯示應用。 HDCP RX作為HDCP中繼器的上游&#xff0c;可以與其他芯片的HDCP TX配合&#xff0c;實現中繼器功能。 對于HDMI2.1輸入&#xff0c;LT7621GX可以配置為3/4通道。自適應均衡使其適…

【Ruoyi 解密 - 12. JDK17的新特性】------ 從Java 8 到 Java 17:向Scala看齊的“簡潔革命”,同宗JVM下的效率狂飆

從Java 8到Java 17&#xff1a;抄作業Scala&#xff1f;JVM同宗下的Ruoyi開發效率狂飆&#xff01; 上一篇我們聊到JDK 17對Python的柔性借鑒&#xff0c;可深入用下來才發現——這哪夠&#xff01;對Ruoyi開發者來說&#xff0c;JDK 17真正的“王炸”&#xff0c;是把同根JVM的…

大模型 “輕量化” 之戰:從千億參數到端側部署,AI 如何走進消費電子?

一、大模型 “輕量化” 的行業背景在 AI 技術蓬勃發展的當下&#xff0c;大模型已然成為行業焦點。從 GPT-4 突破萬億級參數量&#xff0c;到 DeepSeek-R1 邁向千億參數規模&#xff0c;大模型的參數擴張趨勢顯著。然而&#xff0c;這種規模的增長也帶來了諸多挑戰。以 GPT-4 為…

香港電訊與Microsoft香港推出新世代“Teams Phone” 解決方案

香港電訊成為香港首家提供 “Microsoft Operator Connect”的本地電訊營運商1 香港電訊&#xff08;股份代號&#xff1a;6823&#xff09;【香港 ? 2025年2月11日】 – 香港電訊宣布與 Microsoft 香港合作推出 “Operator Connect”&#xff0c;成為全港首家為企業客戶提供全…