sane
sane

Reputation: 125

Splitting a sequence within dataframe?

I have a csv file like this,

x <- read.csv("C:/Users/XXXX/Documents/XXXX/Day1_15042014/work2.csv")
class(x)
x$Sequence.window![enter image description here][1]

> x$Sequence.window

  [1] VVELRKTGGDTLEFHKFYKNFSSGLKDVVWN                                                                
  [2] PGLTTQGTKFGRKIVKTLAYRVKSTQPSSGN                                                                
  [3] EATEFYLRYYVGHKGKFGHEFLEFEFREDGK                                                                
  [4] LVPVVWGERKTPEIEKKGFGASSKAATSLPS                                                                
  [5] NMNELPEKKNSAGFIKLEDKQKLIVEMEKSV                                                                
  [6] PTLHFNYRYFETDAPKDVPGAPRQWWFGGGT                                                                
  [7] PDPTTAPMEAAKQPKKKRSRSKKCKSVNNLD                                                                
  [8] PAKAAKTAKVTSPAKKAVAATKKVATVATKK                                                     

The class of this is a dataframe . I would now like to split the sequence window within a range 10:22 ( Ex [1] VVELRKTGGDTLEFHKFYKNFSSGLKDVVWN, output should be like [1] DTLEFHKFYKNFS for all the sequences) . How would I do this within a data frame?

Upvotes: 2

Views: 66

Answers (1)

jdharrison
jdharrison

Reputation: 30445

You can use the substr function

#dummy data
x <- read.table(text="Sequence.window
VVELRKTGGDTLEFHKFYKNFSSGLKDVVWN
PGLTTQGTKFGRKIVKTLAYRVKSTQPSSGN
EATEFYLRYYVGHKGKFGHEFLEFEFREDGK",header=TRUE,as.is=TRUE)

#substr from 10 to 22
substr(x$Sequence.window,start=10,stop=22)
#[1] "DTLEFHKFYKNFS" "FGRKIVKTLAYRV" "YVGHKGKFGHEFL"

Upvotes: 2

Related Questions