예전에 Velvet 사용시 input 대비 사용할 만한 메모리를
표시한 포스팅이 있었는데...
input 서열양이 많아지니...
일정 이상에서는.... 그 두배정도가 필요할듯 보이네요..
raw데이터 (멀티 라이브러리) 압축 푼 데이터가 10G정도인데
필터링 하면 10G이하로 줄어들었을텐데...
72G 서버에서 헐떡데는 꼴이라니.... 쩝..
예상보다 시간이 많이 걸려서 왜 그러나 보니깐..
중간에 swap으로 가고 있는 상황이라..
velvet으로 어셈블리할때에는 일단 메모리가 무한한 곳에서... ㅎㅎ
그리고 velvet은 매번 할때마다 데이터 결과가 다르다는... ㅋㅋ
동일 버전에서 K-mer 및 다른 옵션을 동일하게 두번 돌렸을때 결과값이
달라지니 혹시 같은 옵션으로 돌린결과를 확인 할때 통계값이 상이해도
놀라시지 않으셔도 됩니다.
금요일, 12월 06, 2013
월요일, 12월 02, 2013
Ubuntu에서 cummeRbund 설치시 주의 사항
Ubuntu에서 RNAseq 분석 후 비주얼라이제이션 관련해서
(저는 사용하고 있습니다. ㅋ) 사용하고 있으신
cummeRbund 패키지를 설치하실라 치면 XML 에러가 생기는 것을 확인 하실 수 있습니다.
XML관련 라이브러리가 Ubuntu에 없어서 그렇다고 하네요.. ㅎㅎ
Ubuntu 10대에서 사용하던 방법인데 13에서도 먹힘니다. :)
참고 사이트 R-help
또한 XML과 함께 RCurl설치시 에러가 생기는 경우도 비슷합니다. :)
다음과 같이 라이브러리를 설치하시면 아름다운 설치 결과를 보실 수 있으십니다. ㅎㅎ
> sudo apt-get install libxml2-dev
> sudo apt-get install libcurl4-openssl-dev
잠시 헤매고 있었는데...
구글에 검색하니.... 해결 방법이 뙁~!!!
(저는 사용하고 있습니다. ㅋ) 사용하고 있으신
cummeRbund 패키지를 설치하실라 치면 XML 에러가 생기는 것을 확인 하실 수 있습니다.
XML관련 라이브러리가 Ubuntu에 없어서 그렇다고 하네요.. ㅎㅎ
Ubuntu 10대에서 사용하던 방법인데 13에서도 먹힘니다. :)
참고 사이트 R-help
또한 XML과 함께 RCurl설치시 에러가 생기는 경우도 비슷합니다. :)
다음과 같이 라이브러리를 설치하시면 아름다운 설치 결과를 보실 수 있으십니다. ㅎㅎ
> sudo apt-get install libxml2-dev
> sudo apt-get install libcurl4-openssl-dev
잠시 헤매고 있었는데...
구글에 검색하니.... 해결 방법이 뙁~!!!
Labels:
cummeRbund,
R,
RCurl,
Ubuntu,
XML
토요일, 11월 30, 2013
GFF3에서 유전자 개수가 몇개인지 궁금할때?
요즘 de novo를 다루는 관계로
assembly 후 gene prediction 할 때 지난번에 포스팅 했던 maker를 사용하는 일이
빈번하다.
maker 결과 중 gff3 type (이 gff/gtf 파일의 형식이.. 버전마다 상이해서... 물론 본인은 차이점은 잘 모르겠다는게 문제.. 여하튼 다르다고 하니...)으로도 파일이 생성되는데
이 파일을 분석에 사용하시라고 분석자에게 보내드렸는데..
안타깝게도 gff 파일이 처음이셨던듯하다.
그런 분에게 gff파일을 보낸 내가 잘못했지만...
gff파일에서 유전자개수를 잘못 알고 계신 관계로.. ㅋㅋ
(지금까지 그렇게 알고 계시면 큰 낭패인데...)
여하튼..
gff파일에서 유전자 개수를 세시는데
$wc genome.gff
하신 듯.. (다르게 하면 그 숫자가 안나오고 wc하면 언급한 숫자가 나온다)
그래서 간단하나마 gff 파일에서 유전자 개수 세기를
언급하고자 한다.
대충 숫자만을 알고 싶다면 굳이 스크립트 필요없다.
$cut -f 3 genome.gff | grep gene | wc
자 이러면 유전자 개수를 알 수 있다.
다음부터는 wc만 하지 않길 바라는 간절한 마음뿐...
토요일, 11월 09, 2013
JGI Project List
DOE산하 JGI의 프로젝트 페이지를 가보면
헐... 이라고 보일수도 있습니다만...
2014년에 새 프로젝트 레폿 시스템을 구축중에 있다니깐.. ㅎㅎ
제가 오늘 포스팅할 내용은
JGI에서 진행하고 있는 프로젝트들은 어떤게 있는지..
걍 한번 R로 그래프 그려봤습니다.
좀더 이쁜 그래프들을 많이 그릴수 있을것 같은데..
실력이 미천한지라.. ㅎㅎ
음.. 잘 보일지는 모르겠지만...
(JGI에서 export된 파일을 받아보면 아시겠지만 공란이 은근 많습니다.)
DOE산하 연구소답게 동물보다는 확실히 미생물이나 곰팡이/식물 프로젝트를
많이 진행하고 있는듯 합니다.
(archaea의 오타는... ㅋ 데이터가 원래 저러다 보니.. ㅋ)
곰팡이가 좀 증가한것처럼 보이는데..
저건 아마도 F1000의 영향인것 같네요..
위의 그래프는 JGI 프로젝트들 중 곰팡이 관련 프로젝트가 현재 어떤 상태로
있는지 보여주는 그래프 입니다. 예전에 시작했던 프로젝트들은 역시나 완료되어있습니다.(중간에 살짝 미확인 결과도 있긴 합니다만....)
다음에는 좀더 이쁘게 그래프를 그릴수 있기를 기대하며... :)
헐... 이라고 보일수도 있습니다만...
2014년에 새 프로젝트 레폿 시스템을 구축중에 있다니깐.. ㅎㅎ
제가 오늘 포스팅할 내용은
JGI에서 진행하고 있는 프로젝트들은 어떤게 있는지..
걍 한번 R로 그래프 그려봤습니다.
좀더 이쁜 그래프들을 많이 그릴수 있을것 같은데..
실력이 미천한지라.. ㅎㅎ
음.. 잘 보일지는 모르겠지만...
(JGI에서 export된 파일을 받아보면 아시겠지만 공란이 은근 많습니다.)
DOE산하 연구소답게 동물보다는 확실히 미생물이나 곰팡이/식물 프로젝트를
많이 진행하고 있는듯 합니다.
(archaea의 오타는... ㅋ 데이터가 원래 저러다 보니.. ㅋ)
곰팡이가 좀 증가한것처럼 보이는데..
저건 아마도 F1000의 영향인것 같네요..
위의 그래프는 JGI 프로젝트들 중 곰팡이 관련 프로젝트가 현재 어떤 상태로
있는지 보여주는 그래프 입니다. 예전에 시작했던 프로젝트들은 역시나 완료되어있습니다.(중간에 살짝 미확인 결과도 있긴 합니다만....)
다음에는 좀더 이쁘게 그래프를 그릴수 있기를 기대하며... :)
화요일, 8월 13, 2013
Regular Expression of Python
아... 간만에 re모듈 사용;;;
ㅋㅋㅋㅋ
역시.. 정규표현식은 녹녹치 않다는
ENSEMBL에서 제공하는 newick포맷을
MEGA에서도 import하게 해주는 변환시켜주는 스크립트를
re 모듈을 사용해서 구현..
이라고 해봤자 지저분한건 마찬가지...
re.split(r"\[\&\&NHX:[\w+=\w+:,\w+=\w+.\w+]+T=\d{4,10}\]",tree_string)
다른 re모듈대신 re.split를 사용한 이유는
tree정보가 한줄에 저장되어 있는 관계로... :)
그리고 match되는 pattern을 취하는것이 아니라 버리는 것이므로 split하면
pattern을 구분자로 리스트로 만들어 주므로 굳이 따로 작업을 할 필요가 없다는.. :)
다음을 해석해 보자면..
re.split(r"\[\&\&NHX:[\w+=\w+:,\w+=\w+.\w+:]+T=\d{4,10}\]",tree_string)
녹색: pattern이 대괄호([])로 쌓여져 있다는 것을 확인
빨강: 대괄호 이후 &&NHX: 문자열이 있다는 것을 확인
오렌지색: 한개이상의 문자열 "=" 한개이상의 문자열 그리고 ":" 혹은 한개 이상의 문자열 "=" 한개 이상의 문자열 "." 한개이상의 문자열 그리고 ":"으로 이루어진 문자열이 한번이상 있다는것 을 확인
노란색: 그 이후 T=로 시작하는 4자리에서 10자리의 숫자가 있다는 것을 확인
ㅋㅋㅋㅋ
역시.. 정규표현식은 녹녹치 않다는
ENSEMBL에서 제공하는 newick포맷을
MEGA에서도 import하게 해주는 변환시켜주는 스크립트를
re 모듈을 사용해서 구현..
이라고 해봤자 지저분한건 마찬가지...
re.split(r"\[\&\&NHX:[\w+=\w+:,\w+=\w+.\w+]+T=\d{4,10}\]",tree_string)
다른 re모듈대신 re.split를 사용한 이유는
tree정보가 한줄에 저장되어 있는 관계로... :)
그리고 match되는 pattern을 취하는것이 아니라 버리는 것이므로 split하면
pattern을 구분자로 리스트로 만들어 주므로 굳이 따로 작업을 할 필요가 없다는.. :)
다음을 해석해 보자면..
re.split(r"\[\&\&NHX:[\w+=\w+:,\w+=\w+.\w+:]+T=\d{4,10}\]",tree_string)
녹색: pattern이 대괄호([])로 쌓여져 있다는 것을 확인
빨강: 대괄호 이후 &&NHX: 문자열이 있다는 것을 확인
오렌지색: 한개이상의 문자열 "=" 한개이상의 문자열 그리고 ":" 혹은 한개 이상의 문자열 "=" 한개 이상의 문자열 "." 한개이상의 문자열 그리고 ":"으로 이루어진 문자열이 한번이상 있다는것 을 확인
노란색: 그 이후 T=로 시작하는 4자리에서 10자리의 숫자가 있다는 것을 확인
import re
f_open = (open(file_name,"r")).readline()
ns = re.split(r"\[\&\&NHX:[\w+=\w+:,\w+=\w+.\w+:]+T=\d{4,10}\]",f_open)
print "".join(ns)
Labels:
newick,
RE,
Regular Expression
피드 구독하기:
글 (Atom)

