comparison KeggCompound.R @ 1:253d531a0193 draft

planemo upload for repository https://github.com/workflow4metabolomics/lcmsmatching.git commit 36c9d8099c20a1ae848f1337c16564335dd8fb2b
author prog
date Sat, 03 Sep 2016 17:02:01 -0400
parents e66bb061af06
children
comparison
equal deleted inserted replaced
0:e66bb061af06 1:253d531a0193
18 18
19 compounds <- list() 19 compounds <- list()
20 20
21 # Define fields regex 21 # Define fields regex
22 regex <- character() 22 regex <- character()
23 regex[[RBIODB.NAME]] <- "^NAME\\s+([^,;]+)" 23 regex[[BIODB.NAME]] <- "^NAME\\s+([^,;]+)"
24 regex[[RBIODB.CHEBI.ID]] <- "^\\s+ChEBI:\\s+(\\S+)" 24 regex[[BIODB.CHEBI.ID]] <- "^\\s+ChEBI:\\s+(\\S+)"
25 regex[[RBIODB.LIPIDMAPS.ID]] <- "^\\s+LIPIDMAPS:\\s+(\\S+)" 25 regex[[BIODB.LIPIDMAPS.ID]] <- "^\\s+LIPIDMAPS:\\s+(\\S+)"
26 26
27 for (text in contents) { 27 for (text in contents) {
28 28
29 # Create instance 29 # Create instance
30 compound <- KeggCompound$new() 30 compound <- KeggCompound$new()
48 # ACCESSION 48 # ACCESSION
49 { 49 {
50 # ENZYME ID 50 # ENZYME ID
51 g <- str_match(s, "^ENTRY\\s+EC\\s+(\\S+)") 51 g <- str_match(s, "^ENTRY\\s+EC\\s+(\\S+)")
52 if ( ! is.na(g[1,1])) 52 if ( ! is.na(g[1,1]))
53 compound$setField(RBIODB.ACCESSION, paste('ec', g[1,2], sep = ':')) 53 compound$setField(BIODB.ACCESSION, paste('ec', g[1,2], sep = ':'))
54 54
55 # ENTRY ID 55 # ENTRY ID
56 else { 56 else {
57 g <- str_match(s, "^ENTRY\\s+(\\S+)\\s+Compound") 57 g <- str_match(s, "^ENTRY\\s+(\\S+)\\s+Compound")
58 if ( ! is.na(g[1,1])) 58 if ( ! is.na(g[1,1]))
59 compound$setField(RBIODB.ACCESSION, paste('cpd', g[1,2], sep = ':')) 59 compound$setField(BIODB.ACCESSION, paste('cpd', g[1,2], sep = ':'))
60 60
61 # OTHER ID 61 # OTHER ID
62 else { 62 else {
63 g <- str_match(s, "^ENTRY\\s+(\\S+)") 63 g <- str_match(s, "^ENTRY\\s+(\\S+)")
64 if ( ! is.na(g[1,1])) 64 if ( ! is.na(g[1,1]))
65 compound$setField(RBIODB.ACCESSION, g[1,2]) 65 compound$setField(BIODB.ACCESSION, g[1,2])
66 } 66 }
67 } 67 }
68 68
69 # ORGANISM 69 # ORGANISM
70 g <- str_match(s, "^ORGANISM\\s+(\\S+)") 70 g <- str_match(s, "^ORGANISM\\s+(\\S+)")
71 if ( ! is.na(g[1,1])) 71 if ( ! is.na(g[1,1]))
72 compound$setField(RBIODB.ACCESSION, paste(g[1,2], compound$getField(RBIODB.ACCESSION), sep = ':')) 72 compound$setField(BIODB.ACCESSION, paste(g[1,2], compound$getField(BIODB.ACCESSION), sep = ':'))
73 } 73 }
74 } 74 }
75 75
76 compounds <- c(compounds, compound) 76 compounds <- c(compounds, compound)
77 } 77 }
78 78
79 # Replace elements with no accession id by NULL 79 # Replace elements with no accession id by NULL
80 compounds <- lapply(compounds, function(x) if (is.na(x$getField(RBIODB.ACCESSION))) NULL else x) 80 compounds <- lapply(compounds, function(x) if (is.na(x$getField(BIODB.ACCESSION))) NULL else x)
81 81
82 # If the input was a single element, then output a single object 82 # If the input was a single element, then output a single object
83 if (drop && length(contents) == 1) 83 if (drop && length(contents) == 1)
84 compounds <- compounds[[1]] 84 compounds <- compounds[[1]]
85 85