1. 起因
之前的代碼(單細(xì)胞分析實(shí)錄(17): 非負(fù)矩陣分解(NMF)代碼演示)沒(méi)有涉及到python語(yǔ)法怀樟,只有4個(gè)python命令行功偿,就跟Linux下面的ls grep一樣的盆佣。然鵝往堡,有幾個(gè)小伙伴不會(huì)命令行械荷,所以我決定再改寫一下,把命令行都放到R下面運(yùn)行虑灰。
2. 嘗試
2.1 一開始吨瞎,我的想法是教大家在R里面調(diào)用python,需要提前下載好anaconda和一些python包
然而想了想在Windows上安裝python包可能對(duì)大家不是很友好穆咐,有些包很難裝颤诀,我之前也弄了很久《耘龋考慮到這次更新是針對(duì)桌面版Rstudio用戶崖叫,故沒(méi)有采用。
2.2 最終拍柒,我采用的方案是心傀,使用Rstudio Server,也就是網(wǎng)頁(yè)版Rstudio
這樣做有幾個(gè)好處:
- 直接和云服務(wù)器連接拆讯,服務(wù)器下載python包和R包都很容易(云服務(wù)器剛買脂男,下血本)
- 我提前配置好運(yùn)行環(huán)境,用戶只需上傳數(shù)據(jù)种呐,分析數(shù)據(jù)宰翅,下載數(shù)據(jù)即可。
代碼方面也更加簡(jiǎn)化:
- 我盡量減少了人工處理的時(shí)間爽室,主要分析代碼只有兩行
如果你之前在我這兒拿過(guò)代碼汁讼,可以直接找我要更新的代碼。此外肮之,如果因?yàn)橹暗拇a涉及命令行掉缺,你操作起來(lái)有困難,可以找我開Rstudio Server的賬戶 (高端玩家就別了戈擒,服務(wù)器配置比較低眶明,就夠幾個(gè)人用的那種)。
3. 注意
- 我會(huì)提前安裝可能用到的R包筐高,所以不用重復(fù)安裝搜囱,直接library就可以
- 請(qǐng)大家及時(shí)下載結(jié)果文件,以免丟失柑土;也請(qǐng)大家在做完分析后蜀肘,刪除表達(dá)數(shù)據(jù),服務(wù)器存儲(chǔ)空間不是很大
- 每個(gè)賬號(hào)只保留半個(gè)月時(shí)間稽屏,若想再次使用扮宠,可以聯(lián)系我再開一個(gè)賬號(hào)
- 有任何問(wèn)題可以微信或者郵箱問(wèn)我
接下來(lái)簡(jiǎn)單介紹一下,使用方法
登錄
打開我給你的鏈接狐榔,輸入用戶名和密碼即可登錄
之后就可以看見(jiàn)Rstudio的界面了
然后確保你的家目錄下面有圖中框出來(lái)的幾個(gè)文件坛增,并點(diǎn)擊進(jìn)入count_data
文件夾
上傳數(shù)據(jù)
點(diǎn)擊upload
上傳數(shù)據(jù)
運(yùn)行代碼
主要是3.R
中的step1
和step2
兩個(gè)函數(shù)
library(reticulate)
use_condaenv(condaenv = "cnmf_env", required = T,conda = "/home/hsy/miniconda3/bin/conda")
py_config() #如果顯示cnmf_env環(huán)境里面的python就OK
source("1.R")
step1(dir_input = "count_data",dir_output = "res1",k=3:5,iteration = 50) #這里為了演示方便获雕,取值都比較小
source("2.R")
step2(dir_input = "res1",dir_output = "res2",dir_count = "count_data",usage_filter = 0.03,top_gene = 30,cor_min = 0,cor_max = 0.6)
查看結(jié)果
step2之后,會(huì)在res2
文件夾中生成結(jié)果文件
sampleID_program.usage.norm.txt和sampleID_program.Zscore.txt
是NMF分解表達(dá)矩陣得到的兩個(gè)矩陣
program_topngene.txt
這是所有program的前幾十個(gè)基因收捣,一般會(huì)放到文件附表
program_pearson_cor.complete.heatmap.pdf
program之間的相關(guān)性熱圖
cor_heatmap_data.txt
用來(lái)畫上圖的數(shù)據(jù)
program_topngene_enrichment.xlsx
program_topngene_enrichment_order.csv
這兩個(gè)都是對(duì)program前幾十個(gè)基因的富集分析結(jié)果届案,這兩個(gè)文件可以用來(lái)輔助我們理解program,其中第二個(gè)文件和相關(guān)性熱圖的順序一致罢艾,看起來(lái)更方便
sampleID_program_gene.heatmap.pdf
用來(lái)驗(yàn)證在這個(gè)樣本中楣颠,program找得對(duì)不對(duì),其實(shí)就是看program的表達(dá)咐蚯,一般看program的前幾十個(gè)基因
sampleID_data_heatmap.txt
用來(lái)畫上面那個(gè)熱圖的數(shù)據(jù)
program之間的相關(guān)性熱圖
某個(gè)樣本中program的表達(dá)
下載結(jié)果
選中你想導(dǎo)出的文件童漩,點(diǎn)擊more
,再點(diǎn)擊Export
就可以了
至此春锋,公眾號(hào)僅有的兩篇付費(fèi)教程都已更新完畢~
因水平有限睁冬,有錯(cuò)誤的地方,歡迎批評(píng)指正看疙!