2019新冠狀病毒學習筆記

最近這波疫情,重現當年初中非典時期,甚至愈演愈烈,與之前初中時的封校住宿學習不同,已經工作的今天和太多的互聯網信息大爆炸讓我們有些焦慮,特別是,作爲學習生物的人,我們也感到無能爲力。官方媒體的科普,已經讓大家對這個病毒的具體情況有所瞭解。我注意到,NJEM也已經把許多文章翻譯成了中文版,以正視聽。在這個時候,我們不能聽信謠言!那麼作爲有些生物學素養的我們,也應該以自己的知識,學習下這個病毒的信息,以我們自己的理解!

下面是我的小小探索,雖然不足掛齒,至少我開啓了探索之路。想起了那句名言,只要開始,便會心生熱忱,持續爲之,便能走向成功!(來自一本影響了我一生的書《方與圓》–丁遠峙)

在這裏放上幾篇NJEM文章的中文翻譯:

>>NEJM官方翻譯 | 美國首例新冠病毒肺炎的治療過程

>>治療新冠肺炎的新藥新疫苗,會很快來麼?

>>翹首以盼的流行病學數據來了|新冠肺炎

>>實錘!境外首例新冠病毒人傳人病例

>>疫情: 從正式發表的權威數據能得到什麼

>>重要數據|中國團隊《新英格蘭醫學雜誌》發佈新型冠狀病毒研究

>>新型冠狀病毒上海救治專家組組長張文宏:病毒解碼後的科學防控

>>《新英格蘭醫學雜誌》權威評論:中國新型冠狀病毒

>>中國國際電視臺專訪NEJM主編、傳染病專家:嚴陣以待新型肺炎

1.序列上的一些探索

參考自https://github.com/BenLangmead/ads1-notebooks

def readGenome(filename):
#讀取全部序列
    genome = ''
    with open(filename, 'r') as f:
        for line in f:
            # ignore header line with genome information
            if not line[0] == '>':
                genome += line.rstrip()
    return genome
genome = readGenome('../Wuhan-RNA.fasta')


import collections
collections.Counter(genome)
#Counter({'A': 8954, 'U': 9594, 'G': 5863, 'C': 5492})

import matplotlib.pyplot as plt
def findGCByPos(file):
    ''' Find the GC ratio at each position in the read '''
    # Keep track of the number of G/C bases and the total number of bases at each position
    gc = [0] * 70
    totals = [0] * 71
    with open(file) as f:
        for line in f:
            #print(len(line))
            if line.startswith('>'):
                continue
            for i in range(0,len(line)):
                if line[i] == 'C' or line[i] == 'G':
                    gc[i] += 1
                totals[i] += 1
                #print(len(line))
    # Divide G/C counts by total counts to get the average at each position
    for i in range(len(gc)):
        if totals[i] > 0:
            gc[i] /= float(totals[i])
    #print(totals)
    return gc

gc = findGCByPos('../Wuhan-RNA.fasta')
plt.plot(range(len(gc)), gc)
plt.show()

這些代碼後,就可以看到GC含量,是以每行的每個鹼基集合爲一組來比較的,應該也比較有說服力,只有40左右。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-jyHK6gHW-1580631935948)(https://jiawen.zd200572.com/wp-content/uploads/2020/02/gc.jpg)]

2.RNA摺疊

又想到怎麼探索下這一串序列在病毒殼裏面是怎麼摺疊的呢?找到了兩個軟件,首先是Vienna RNAfold,自己運行了一下,花費一兩個小時,好像結果不咋地。

#安裝這個軟件,還是conda
conda install -c bioconda viennarna
RNAfold  < Wuhan-RNA.fasta  > Wuhan-rna.ss 
RNAplot > Wuhan-rna.ss

乍一看像一個進化樹,如圖:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-KDtK7BR8-1580631935952)(https://jiawen.zd200572.com/wp-content/uploads/2020/02/zhede.jpg)]

放大了看,是頸環結構,發展一些地方摺疊的並不好。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-cjueRMyd-1580631935953)(https://jiawen.zd200572.com/wp-content/uploads/2020/02/zhede2.jpg)]

3.百度linearFold網頁服務試用

偶然搜索發現百度也開發了個加速算法,速度提升很多,計算時間從小時級別到秒級別,測試確實如此,一分鐘內返回了結果,看了下:

連線應該表示的是連接, forna (Kerpedjiev et al 2015) 可視化,由於長度太長,沒法畫出,後面嘗試用本地畫試試。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章