From: Henry Maddocks Date: 2012-11-05T07:15:43+09:00 Subject: Re: undefined method `map' On 5/11/2012, at 10:35 AM, Marcelo Laia wrote: It's telling you what the problem is. > # search for xac + hypothetical > xac = serv.bfind("T00084 hypothetical") > # get the IDS into an array > ids = xac.map { |gene| $1 if gene =~/^(.*?)\s+/ } > # retrieve fasta and print > ids.each { |id| puts serv.bget("-f -n 1 #{id}") } > -----CODE END HERE-------- > > /home/marcelo/bin/scripts/get_fasta4:10:in `
': undefined method > `map' for # (NoMethodError) xac is a String which doesn't have a method 'map'. 'map' expects an Array. You can either force xac to be an Array… ids = Array(xac).map { |gene| $1 if gene =~/^(.*?)\s+/ } or fix the previous line to return an array. Henry