『壹』 如何用python繪制Circos圖
用Python實現Circos圖的繪制在線繪制的Circos有一定局限性,如對數據的要求、個性化的局限和處理速度等的問題,但如果你是一個Pythoneer或者喜歡用更加Pythonic的方式來個性化地繪制Circos圖,那麼今天就跟隨我一起用代碼實現這一目標吧!
安裝Circos包
首先,登錄Python的包索引網站PythonPackageIndex(PyPI,正確讀音是:PiePeeAi),找到Circos包的下載頁:
https://pypi.python.org/pypi/Circos/1.3.5
該包/模塊的作者是我的好友EricMa。你可以選擇下載wheeler文件,然後本地安裝。也可以在shell下直接通過pip進行安裝:
pipinstallcircos
注意,所支持的Python版本必須是3.x,對2不支持。
選擇數據
當安裝了circos包後,我們就可以直接應用這個包來寫代碼了。為了演示方便,我需要應用一些數據。作為內科醫師,就讓我來展示一下老本行:處理葯物與肝酶細胞色素P450的相互關系的可視化。由於是為了拋磚引玉,所以繪制出的Circos圖相對簡單。
我們先從美國FDA官網下載不同細胞色素相關的各種口服葯物表。共202種常用的口服葯物,涵蓋內科學、腫瘤學、神經科和心理學等學科。數據文件如下:
可以看到這個數據的結構:是按肝細胞色素酶進行分類,共分8個列。這8個細胞色素酶分別是:CYP1A2,CYP2B6,CYP2C8,CYP2C9,CYP2C19,CYP2D6,CYP2E1和CYP3A4。我們將要建立各個口服葯與這些肝酶之間關系的Circos圖,從而了解通過相同肝酶代謝或轉化的葯物之間是否存在相互作用。
導入各個模塊和讀入數據
導入各個模塊:
fromcircosimportCircosPlot
importxlrd
importpandasaspd
importnumpyasnp
讀入文件:
filename='.\MedicationInteraction.xlsx'
book=xlrd.open_workbook(filename)
print('Fileloaded!')
提取數據:
nrows=book.sheet_by_name('Sheet1').nrows
header=book.sheet_by_name('Sheet1').row_values(0)
data=[book.sheet_by_name('Sheet1').row_values(i)foriinrange(1,nrows)]
df=pd.DataFrame(data,columns=header)
df[df=='']=np.nan
讀取後,葯物和酶的數據為pandas的DataFrame數據結構,細胞色素P450酶的名字為columns的名字。我們可以檢查一下數據:
修數據,尤其是處理NA數據
df_dict={}
foriinrange(len(df.columns)):
df_dict[df.icol(i).name]=list(df.icol(i).dropna())
節點和連線
創建節點(nodes)數據,在我這個例子里就是各個葯物和肝酶:
nodes=[]
forkeyindf_dict.keys():
nodes.extend(df_dict[key])
nodes=list(nodes)
headers=list(df.columns)
enzymes=['0']*5
forheaderinheaders:
enzymes.append(header)
enzymes.extend(['0']*5)
nodes.extend(enzymes)
創建連線(edges)數據,我們應用tuple(元組)這個數據結構來表示葯物與特定肝酶之間的關系:
edges_origin=[]
forkeyindf_dict.keys():
forvalueindf_dict[key]:
edges_origin.append((key,value))
繪圖
繪制Circos圖:
c=CircosPlot(nodes,edges_origin,radius=10,
nodecolor="blue",
edgecolor="red",
)
c.draw()
得到了下面這張所有葯物與肝酶之間的圖:
左上方是8個肝臟細胞色素P450酶(CYP1A2、CYP2B6、CYP2C8、CYP2C9、CYP2C19、CYP2D6、CYP2E1和CYP3A4)。其它點即為202種口服葯物。每種葯物都與參與代謝和轉化它的P450酶相連。與相同酶連接的不同葯物,理論上應該都存在相互作用,但具體如何還要看與酶的作用機理。
個性化繪圖
如果我們打算分別可視化出不同肝酶的關系圖形,我們只需改變連線信息,即edges信息:
edges=[]
‍forvalueindf_dict['CYP2B6']:
edges.append(('CYP2B6',value))
c=CircosPlot(nodes,edges,radius=10,
nodecolor="orange",
edgecolor="orange",
)
c.draw()
從而我們得到了各種肝酶所代謝和轉化葯物的圖形
用PS將它們合並:
相同肝酶所代謝和轉化的葯物用相同顏色的edges表示。
顯示特定葯物
最後,我們可以挑選其中一些感興趣的葯物來進行觀察,例如,我從這202個葯物中指定幾個我感興趣的葯物:
propafenone(心律平),acetaminophen(對乙醯氨基酚),paclitaxel(紫杉醇),ibuprofen(布洛芬),losartan(洛沙坦),omeprazole(奧美拉唑),carvediolo(卡維地洛),codeine(可待因),theophylline(茶鹼),quinidine(奎尼丁),verapamil(異搏定),lovastatin(洛伐他汀),nitrendipine(尼群地平)
然後重新建立edges:
medications=['propafenone','acetaminophen','paclitaxel','ibuprofen','losartan','omeprazole','carvedilol','codeine','theophylline','quinidine','verapamil','lovastatin','nitrendipine']
edges_candidate=set()
formedicationinmedications:
foredgeinedges_origin:
ifmedication==edge[1]:
edges_candidate.add(edge)
edges_candidate=list(edges_candidate)
然後再繪圖:
c=CircosPlot(nodes,edges_candidate,radius=10,
nodecolor="black",
edgecolor="black",
)
c.draw()
從而得到這張圖。
『貳』 pip 安裝Python包時老是出現拒絕訪問的提示,除了直接下載包應該怎麼辦
使用yum試試,或者wget下載包
『叄』 如何在mac版本的python里安裝pip
mac裡面python自帶easy_install的,最快的應該就是在terminal裡面sudo easy_install pip了,網路好幾秒就ok。運行完可以用pip help測試一下是否安裝成功,成功安裝後,直接pip install numpy或者其他包就可以了。
ps:用sudo的時候需要輸入密碼,這個密碼是你自己電腦的密碼,輸入的時候採取了「保密措施」,你看不到自己輸入的字元,完整的輸入進去以後,回車就可以了。
『肆』 用pip安裝python第三方包的時候顯示錯誤
pip 不是在python解釋器中運行。而是在windows的命令行下運行,pip在PythonScripts目錄
下,cmd,cd到該目錄,然後輸入pip install googlemaps 。
『伍』 如何在win7下安裝Python及配置
1、首先,從網路搜索python官網下載適合自己電腦python版本。
『陸』 python中pip install怎樣安裝,求從下載到成功的具體步驟
1. Download the package(.whl file) from the website
2. Copy the .whl file into the C:\Python34\Scripts
3. run window command prompt and path is C:\Python34\Scripts
4. type"pip install XXXXX.whl"
PS: some high-level package need to install other packages before accordinglywhich would be seen in the command window
『柒』 python zip包怎麼安裝
雙擊安裝包,以管理員身份運行,點擊」Next「,
選擇安裝路徑,點擊」Next「,
點擊」Next「,
安裝過程如下
6
點擊」Finish「
7
配置系統環境變數,找到系統環境變數Path,在最後面追加python的路徑,
8
打開cmd命令,輸入python,看到如下界面,說明python已經安裝成功並正常運行。
『捌』 win XP的系統應該裝哪個python的安裝包
直接裝2.x系列和3.x系列的最新版本行了,不需要嚴格對應安裝那兩個版本。
Python 3.3.2
32位:http://www.python.org/ftp/python/3.3.2/python-3.3.2.msi
64位:http://www.python.org/ftp/python/3.3.2/python-3.3.2.amd64.msi
Python 2.7.5
32位:http://www.python.org/ftp/python/2.7.5/python-2.7.5.msi
64位:http://www.python.org/ftp/python/2.7.5/python-2.7.5.amd64.msi
如果你的是64位系統,那麼選擇32位或64位版本都可以,不過64位更佳。如果是32位系統,那隻能用32位版本。
『玖』 Python之安裝和環境配置
python的下載
1.可以去python官網下載,https://www.python.org/
2.下載完成後,安裝即可。
python的檢測
1.打開開始-運行-cmd(快捷鍵win+R)。 如果是mac,打開使用工具-終端。
2.在終端里輸入python,以下畫面就是進入python了,表示安裝成功。
相關推薦:《Python視頻教程》
python環境變數
這里是win10舉例
右鍵我的電腦-屬性-高級
2.選擇環境變數---在系統變數里找到Path---然後雙擊,進去之後新建,將python的路徑添加進去即可。
環境變數設置好之後cmd運行python就方便了許多。(不太明白的可以去網路搜,這些安裝改環境變數網上有很多,就不多說廢話了)
補充:如果安裝了多個python版本,在cmd里運行python,一般電腦默認優先運行先安裝的。
解決方法,可以給python重新命名,然後再設置環境變數,這樣在cmd里運行即可。例如:python2和python3運行cmd直接輸入python2或者python3即可。
3.變數名
可以由字母/數字/下劃線組成
ps:~數字不能開頭
~不能是關鍵字(and、as、assert、break、class、continue、def、del、elif、else、except、exec、finally、for、from、global、if、import等等)
~最好不要和python內置的東西重復
~變數名最好寫的有意義,一看名字就能看懂是什麼。 比如: user_name user_age user_id
『拾』 PyCharm怎麼安裝
python入門:環境配置和IDE安裝
首先是本人的PC系統環境:win 8,64位。
一、python環境配置
(1)官網下載python 2.7.10【如果是win 8系統,貌似裝3.5.0版本的會出錯0x80240017】
https://www.python.org/downloads/release/python-2710/
ok,到此就完成了python的入門學習,還是非常簡單。深知python只是一個易上手工具,後面的路還有很長,加油。
PS:修改界面的風格方式:File->Settings->Editor->Colors&Fonts在Scheme中選擇其他風格即可。至於為什麼都喜歡這個界面呢?可能是...大家都懂!