하나의 ID 열을 포함하는 텍스트 파일 (이름이 ids.file
)을 읽을 수있게 훌륭하게 작동하는 기존의 perl one-liner (Edwards 연구소에서)를 가지고 있으며 특별히 형식이 지정된 두 번째 텍스트 파일 (이 예에서 fasta.file
은 생물 정보학을 알고있는 사람들을위한 "fasta"형식으로되어 있음) 첫 번째 파일의 ID와 일치하는 시퀀스를 반환합니다. 나는 두 가지 추가 작업을 수행하기 위해이 스크립트를 확장 기대했다 :펄 시퀀스 추출 루프
- 현재 펄 만이
ids.file
가 하나의 데이터 열이 포함 된 경우 작동하는 것 같다 한 줄. 두 열 (공백으로 구분)을 포함하는 파일에서 작업하고 데이터의 두 번째 열 (실제로 데이터의 모든 열)에 대해 작업하고 싶습니다. 그러나 누군가가 - 새 파일 대신 세 번째 열로 검색 결과에서 반환 된 결과를 추가하고 싶습니다.
예를 들어 설명 할만큼 친절하지만 시간 중 하나에 대해서만 기울이면, # 2를 풀려고합니다. # 1을 (를) awk를 사용하여 두 번째 열에서 Perl 코드 만 사용하는 루프 - 아직 얻지 못했지만 닫습니다. 따라서 # 2는 나에게 더 어려운 것 같습니다. 다음과 같이
펄 하나의 라이너입니다 : 당신이 줄 수있는 모든 도움을 주셔서 감사합니다
perl -ne 'if(/^>(\S+)/){$c=$i{$1}}$c?print:chomp;$i{$_}=1 if @ARGV' ids.file fasta.file
!
하나의 샘플 입출력은 세 개 이상의 단락을 말합니다. 그리고 읽기가 훨씬 쉬워졌습니다. – TLP
나는 완전히 동의한다. 예제를 추가하십시오. – ikegami
죄송합니다 - 여기에 두 개의 입력 파일의 샘플은 다음과 같습니다 파일 ids.file은 다음과 같습니다 개 시보레 곰 기아 고양이 포드 및 파일 fasta.file은 다음과 같습니다 > 시보레 (334) 3434 (5) 232 TGAGAGAGAGAGAGAGGAGAGAGAGAGGAGAGAG > 기아 2,223 2,323 23 ACACACACACACACACACC 원하는 출력 ids.file에서 fasta.file 2 열을 사용하여 검색이 보이는 출력 파일 생성하는 스크립트 : TGAGAGAGAGAGAGAGGAGAGAGAGAGGAGAGAG 를 개 체비> 시보레 334 3434 5 232 곰 기아> 기아 2223 2323 23 ACACACACACACACACACC 고양이 f ord –