數(shù)據(jù)透視表(Pivot Table)是一種交互式的表,可以進行某些計算,如求和與計數(shù)等。所進行的計算與數(shù)據(jù)跟數(shù)據(jù)透視表中的排列有關(guān)。
之所以稱為數(shù)據(jù)透視表,是因為可以動態(tài)地改變它們的版面布置,以便按照不同方式分析數(shù)據(jù),也可以重新安排行號、列標(biāo)和頁字段。每一次改變版面布置時,數(shù)據(jù)透視表會立即按照新的布置重新計算數(shù)據(jù)。另外,如果原始數(shù)據(jù)發(fā)生更改,則可以更新數(shù)據(jù)透視表。
傳統(tǒng)的數(shù)據(jù)透視表一般是在excel中操作的,但excel操作比較麻煩,且excel讀取大數(shù)據(jù)容易造成電腦卡的現(xiàn)象。而使用Python的pandas包,可以方便的處理excel數(shù)據(jù),這里,我們介紹excel透視的替代方案,pandas的groupby函數(shù)。
In [1]:
import pandas as pd
本次分析數(shù)據(jù)存放在當(dāng)前運行目錄下的data/ASV目錄下,df.sample(5)隨機顯示5行讀取到的數(shù)據(jù)。
In [2]:
df = pd.read_table('./data/ASV/subsample_asv.tax.xls') df.sample(5)Out[2]:
1.按照門水平進行透視分析,并提取樣品列進行求和。
to_excel("data/ASV/phylum.xlsx",index=True) 使得輸出數(shù)據(jù)保存至data/ASV目錄下的phylum.xls文件。
In [3]:
df.groupby('phylum').sum()Out[3]:
In [4]:
df.groupby('phylum').sum().to_excel("data/ASV/phylum.xlsx",index=True)
Excel輸出文件如下圖所示:
2.按照門和屬進行透視,并輸出到data/ASV目錄下的phylum_1.xlsx文件。
In [5]:
df.groupby(['phylum','genus']).sum().to_excel("data/ASV/phylum_1.xlsx",index=True)
Excel輸出文件如下圖所示:
使用agg對每列進行統(tǒng)計計算
In [6]:
df.groupby('phylum').agg(['mean','std','count','max'])Out[6]:
In [7]:
df.groupby(['phylum','genus']).agg(['mean','std','count','max'])Out[7]:
往期相關(guān)鏈接:
1、R基礎(chǔ)篇
excel不熟練怎么辦,R來幫您(一)數(shù)據(jù)分類匯總; R相關(guān)軟件及R包安裝; 【零基礎(chǔ)學(xué)繪圖】之繪制venn圖(五);2、R進階
ggplot2參數(shù)設(shè)置麻煩?試試ggpar!;
【繪圖進階】之六種帶中心點的PCA 圖和三維PCA圖繪制(四);
【繪圖進階】之交互式可刪減分組和顯示樣品名的PCA 圖(三);
3.python基礎(chǔ)篇
Python入門到底有多簡單(一):數(shù)據(jù)讀寫與輸出;
4、數(shù)據(jù)提交
3分鐘學(xué)會微生物多樣性云平臺數(shù)據(jù)分析;
3分鐘學(xué)會CHIP-seq類實驗測序數(shù)據(jù)可視化 —IGV的使用手冊;
10分鐘搞定多樣性數(shù)據(jù)提交,最快半天內(nèi)獲取登錄號,史上最全的多樣性原始數(shù)據(jù)提交教程;
20分鐘搞定GEO上傳,史上最簡單、最詳細(xì)的GEO數(shù)據(jù)上傳攻略;
5、表達(dá)譜分析
表達(dá)譜分析(二)通路富集分析和基因互作網(wǎng)絡(luò)圖繪制;miRNA靶基因預(yù)測軟件__miRWalk 3.0;
6、醫(yī)學(xué)數(shù)據(jù)分析
KING: 樣本親緣關(guān)系鑒定工具;【W(wǎng)GS服務(wù)升級】人工智能軟件SpliceAI助力解讀罕見和未確診疾病中的非編碼突變;
隱性疾病trio家系別忽視單親二倍體現(xiàn)象——天昊數(shù)據(jù)分析助力臨床疾病診斷新添UPD(單親二倍體)可視化分析工具;
【昊工具】Oh My God! 太好用了吧!疾病或表型的關(guān)鍵基因查詢數(shù)據(jù)庫,我不允許你不知道Phenolyzer;
天昊客戶服務(wù)中心
手機/微信號:18964693703
【本群將為大家提供】
分享生信分析方案
提供數(shù)據(jù)素材及分析軟件支持
定期開展生信分析線上講座
QQ號:1040471849
作者:大熊
審核:有才
來源:天昊生信團