跳到主要內容

發表文章

目前顯示的是 2017的文章

關於Gitk 在 MacOS Sierra 無法啟動一事

最近為了幾個整理資料的小腳本開始使用 Git 來做版本控制 ,假裝自己好像真的會寫程式一樣 。 自己摸索了一會,對於 Git 分支和提交的概念雖然覺得可以想像,不過實作起來又是完全另一回事,每次要提交或放上 Github 都是幾番 Google 以上的工夫。這時看到 這樣的文章 格外的認同。 是啊,終端機界面真的是太黑太危險了,我還是把圖形化的 Gitk 叫出來看看吧。 於是我就 gitk 了一下,發現它崩潰了。 然後又再 gitk 了一下,發現它還是叫不出來。 嗯,看來不是打開的方式不對,是它整個都不太對勁,再一查發現 StackOverflow 早有人解決這個問題。於是先裝 homebrew 讓自己感覺彷彿像學程式的 ,然後 brew cask install tcl 問題解決,不過我反正也沒更新腳本,所以即使 Git 能用了我也沒東西試 (´・ω・`)

第一次的 StackOverflow

今天為一個用 R 畫畫的小腳本第一次到傳說中 的萬事屋 StackOverflow 去 發問 了,謹為文記念。 在我一拐一拐學著 R 的過程中,帶我前進的拉力的成分幾乎全是 StackOverflow (至於推力嘛,當然就是在實驗室生活中越養越肥美的懶病),如果沒有它,我想寫出來偷懶的腳本十個有十一個會寫到 library(stringr) 就結束囉。 今天的問題來自之前為了把電位測定的紀錄畫成圖而寫的腳本,是個裡面充滿巢狀的 for - loop 迴圈的恐怖玩意,它雖然會動但因為難以讀懂所以也不太可能再加功能進去。無奈我發下豪語說「啊,這個反正用 R 弄很快」的那個心血來潮只生出個別樣本的電位圖,至於總結的摘要圖當時就沒做了。 不過說到底,最重要的根本就是總結圖…… 動手改的過程當中對於執行速度之緩慢感到不耐煩,想起之前看過的 讀取速度比較 文,我決定歸咎給最開始的 read.table() 跑太慢,目前讀一個原始檔大概要花十秒。 開開心心的戴入 data.table 套件,我理想的流程是這樣的:把讀取的部分用 fread() 重寫一次,然後進到後面的迴圈海整理出可讀的版本再往下做。事實上…… Error in fread( "test.txt" , fill = TRUE , sep = "\t" , quote = "" , header = FALSE ) : Expecting 3 cols, but line 258088 contains text after processing all cols. Try again with fill= TRUE . Another reason could be that fread 's logic in distinguishing one or more fields having embedded sep=' ' and/or (unescaped) ' \n ' characters within unbalanced unescaped quotes has failed. If quote=' ' doesn' t

心血來潮的定序分析:Linux安裝

我想嘗試的 ChIP-seq 分析流程是這樣的: 取得需要的定序資料:從 GEO Dataset 下載 把載來的打包檔案 (.sra) 轉換成可分析的原始資料 (.fastq):使用 SRAToolKit 確認定序品質: FastQC 排除品質不佳的資料: FastX Toolkit 將定序結果對應到參考的基因組上: Bowtie 2 整理對應完成的資料: BEDTools 尋找訊號峰值(是說中文維基百科上 這個條目 竟然就直接用英文上了): MACS 依樣畫葫蘆的過程中發現,啊呀 FastX Toolkit 、 BEDTools 還有 MACS 都要在 UNIX-like 系統上才能執行,原因我也沒去深究,用現成的工具也不能挑剔這個吧。 所以只好試著 Linux 一下了,這次嘗試我選擇在 Virtualbox 虛擬機器裡安裝長期支援版本 ( Long term support, LTS )的 Ubuntu Server ,過程跟平常重灌電腦沒有太大差異,也不難找到 流程教學 。 選擇用 Virtualbox + Ubuntu 的理由很簡單:大家用什麼我就跟著用,碰到問題的時候能夠從 無窮之海的集體意志 找到答案的機會大一點。 在安裝的過程當中如果Virtulbox不讓你裝 64 位元版的 Linux ,那可能是 虛擬化 功能沒有啟動,可以尋找一下符合你使用電腦的 教學 來啟動這個功能。由於 32 位元的作業系統只認得最多 2 GB 記憶體,在動輒就用掉 5 GB 以上的定序世界是沒有 32 位元的生存空間的。 OK ,到了這裡安裝應該也差不多完成了,如果你好奇為什麼裝 Ubuntu Server 而不是 Desktop 版本,那是因為接下來用上的工具反正沒有圖形介面,不想裝用不上的桌面介面 ,而且直接對著命令列下指令感覺比較帥。 說到命令,很多人到這裡可能會對不熟悉的介面過敏起疹子之類的,不過說真的扣掉工具本身 靠複製貼上可以解決的 指令,只會幾個指令也能活得很好的。

心血來潮的定序分析:起手配裝篇

任何人有五百萬(定序深度)都可以參加慈善論文王大賽 想不到和電腦差不多,全基因組分析在生命科學所扮演的角色在數年之間從最新最炫最頂尖,直教人傾家盪產也玩不起的奢侈品成了如果負擔得的起的話就該來上一點的錦上添花,如果單看幾家豪門期刊,甚至都要有些標準配備的味道了。 這類的研究看多了就有些好奇除了作者們注重的結果之外的其他地方究竟是什麼樣子。畢竟全基因組的賣點就在全面嘛,光是秀個相關係數分布圖說「大部分都沒差啦」然後就開始花式特寫想講的東西,感覺就像是看旅遊生活頻道那樣沒到現場去總覺得有些空虛寂寞又遺憾。 可是次世代定序資料它比起相對好理解的微陣列分析,方法本身已經比較抽象,又搭配上花樣百出的免疫沉澱或者鹼基配對之類就更讓人眼花撩亂了。以前雖然屢屢有進大觀園的念頭,但這一類沒有明確的目的、只是想學點新東西的念頭在懶病下的平均壽命大概只有一天。 不過俗話說得好,懶能載舟亦能覆舟,最近因為手上的題目鬼打牆,其中一部分的線索或許可以在 GEO Dataset 裡面翻出來,當然想知道的事定序的原作者都沒提到 是說有提到的話我也不用做了 ,只好自己動手到別人的資料裡撈東西,畢竟這總比自己重做來得輕鬆 又便宜 。 這一動手不禁感到十足困擾,網路上能找到台灣的相關資料不太多,即使有也不少是展示性質的要嘛太細節、要嘛魔法一般;換用英文看倒也不是不行,不過英文資料又是千頭萬緒,找什麼都有,就是沒個起點可以下手;最後呢,能接受的指南竟然是在日文找到的 1 。 跟著跑完一次流程之後,我決定留個紀錄給自己備查,也或許有天會幫到打算以一種 IKEA 的氣勢來自家烘焙定序資料而開始 Google 的人,預設的目標是能對已發表的定序資料用現成的工具做一些探索。 那麼,就讓我們開始吧,在那之前首先低頭望向電腦: 你扛得住定序分析嗎? 因為 Linux 平台可以使用的現成工具資源比較完整,所以用虛擬機器來跑 Linux 做分析是不錯的選擇,目前嘗試中的幾個重要數字是這樣的,請自行估算分析資料的規模和可以忍受的耗時。 在分析 ChIP-seq 的時候,最瓶頸的時間大概是把定序片段對回參考基因組的步驟 2 ,一千萬個讀數 (reads) 的原始 .fastq 檔案使用 Bowtie2 來做排列的時間大約是: 一百個小時 (Core i5 2500 @ 3.30 G

文獻管理軟體:關於ReadCube, Mendeley, Papers有時還有其他

出發點 我家的文獻通常是這樣來的: 我有訂閱 Science 的 編輯精選 跟幾個與我題目有關的 關鍵字 實驗室平均來說每週會有一篇書報討論 臉書牆上看似有趣的玩意 它們會先成為瀏覽器上關不掉的分頁,過一段時間或是瀏覽器當掉幾次之後,心不甘情不願的搬家到下載項目,然後很多時候就長住在那兒,直到碰到比較無聊的演講開始整理時才會發現有些東西其實下載了五遍。 使用習慣 會在不同的裝置和系統上面閱讀 尋找一篇文的關鍵字通常是作者、期刊、跟內容的隨機組合 提到依稀記得的文章卻想不起來時會覺得很焦慮 從這幾點出發,對我來說特別重要的特質是 跨平台同步 、 全文檢索 (最好聰明點)、還有 執行速度快 。 除了這些之外,當然隨寫隨引的引用工具好不好用還有推薦文獻如何也有影響,不過就我來說為了配合協作,引用工具還是配合實驗室,反正也不是那麼頻繁的用上;至於推薦嘛,雖然廣泛閱讀是很重要啦,不過即使沒有推薦功能文獻資料夾裡也都充滿了不認識的孩子,我想推薦功能大半還是滿足屯書癖而已。 Endnote 老牌的文獻管理,作為和 Word 搭配的引用工具來說,除了厚重了點還有搭配追蹤修訂功能有點容易當機之外沒什麼大問題,最近的版本似乎也推出了跨平台同步的功能。其實它也能從 PDF 解析引用資料或是用引用資料尋找全文,不過 PDF 閱讀器相當陽春,我目前只有在寫東西時才會打開它,並不在上面閱讀。 ReadCube Nature Publishing Group 和 Wiley 推廣得相當認真的閱讀器,界面上也算漂亮。在文章管理上使用看起來像資料夾但實質上是標籤的處理方式。它雖然有跨平台同步功能,但只有付費用戶才能使用。 我一開始對於它的擴展 PDF 1 功能很感興趣,但使用起來其實還好,因為我的領域裡有不少論文本來就會用超連結放引用,但它的閱讀器本身卻不支援 PDF 原來就有的超連結,所以常常發生這篇論文沒辦法擴展,但原來的超連結又不能用,只好複製下來 Google 去也。擴展變成一個偶爾方便一些,但大多時候添麻煩的雞肋存在。 除了不支援超連結,它的 PDF 閱讀器在我的機器上 2 字體的渲染也有問題,比起 Acrobat自家的程式,字硬是模糊了不少,快速瀏覽的時候也常發生往後翻去的那頁空白了兩三秒才出現的狀態。另

一勞永逸

成長過程中碰到太多以一勞永逸為賣點的東西,以致於有段時間對於現在投資、以後回收都反射性的迴避。 可是生命中重覆的瑣事又那麼多,即使不是瑣事,也可能在跌跌撞撞裡一而再再而三。一回過神來又變成用現在花時間去學雖然花時間,但以後一定會回本的信徒了。 於是不管什麼分析都想寫成通用的腳本,所以花時間在R上面;想不動腦的弄出習慣風格的文件或是紀錄,於是在摸索Markdown甚至聽信了網路傳言想玩玩Latex。 最後到底是真的為了效率,或者只是給自己找個逃避眼前事的理由都搞不太清楚啦。