Thomas 4 年之前
父节点
当前提交
35b96f2c7c
共有 4 个文件被更改,包括 16 次插入6 次删除
  1. 3 2
      index.js
  2. 3 2
      index.ts
  3. 7 1
      test.js
  4. 3 1
      test.ts

+ 3 - 2
index.js

@@ -163,8 +163,9 @@ const getInteractionsFromEntry = (json) => __awaiter(void 0, void 0, void 0, fun
             .flatMap((e) => e.match(/[A-Z][A-Z0-9]{2,}/g));
     }
     let res = [...new Set([...genes_scope_inter, ...genes_interactant, ...comment_subunits_genes])].sort().filter((e) => typeof e === 'string').filter(_ => _);
+    let filterOut = ['PHOSPHOSERINE', 'MOTIFS'];
     if (res.length > 0)
-        res = res.flatMap((e) => e.match(/[A-Z]{2,}[A-Z0-9]{1,}/g)).filter(_ => _);
-    return res;
+        res = res.flatMap((e) => e.match(/[A-Z]{2,}[A-Z0-9]{1,}/g)).filter((e) => !(filterOut.includes(e)));
+    return res.filter(_ => _);
 });
 exports.getInteractionsFromEntry = getInteractionsFromEntry;

+ 3 - 2
index.ts

@@ -124,9 +124,10 @@ const getInteractionsFromEntry = async (json:any) => {
 
     let res = [...new Set([...genes_scope_inter, ...genes_interactant, ...comment_subunits_genes])].sort().filter((e:any) => typeof e === 'string').filter(_=>_)
     
-    if(res.length > 0) res = res.flatMap((e:any) => e.match(/[A-Z]{2,}[A-Z0-9]{1,}/g)).filter(_=>_)
+    let filterOut = ['PHOSPHOSERINE', 'MOTIFS', 'INFECTION', 'PROTEIN', 'MICROBIAL']
+    if(res.length > 0) res = res.flatMap((e:any) => e.match(/[A-Z]{2,}[A-Z0-9]{1,}/g)).filter((e:any) => !(filterOut.includes(e)))
     
-    return res
+    return res.filter(_=>_)
 }
 
 // const findDistance = async (idmappingPath: string, dbPath:string, geneNameA:string, geneNameB:string, maxDistance = 6) => {

+ 7 - 1
test.js

@@ -8,8 +8,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
         step((generator = generator.apply(thisArg, _arguments || [])).next());
     });
 };
+var __importDefault = (this && this.__importDefault) || function (mod) {
+    return (mod && mod.__esModule) ? mod : { "default": mod };
+};
 Object.defineProperty(exports, "__esModule", { value: true });
 const _1 = require(".");
+const fs_1 = __importDefault(require("fs"));
 (() => __awaiter(void 0, void 0, void 0, function* () {
     // https://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/taxonomic_divisions/
     // https://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/idmapping/by_organism/HUMAN_9606_idmapping.dat.gz
@@ -18,6 +22,8 @@ const _1 = require(".");
     // const n = await getEntryFromGeneName(idmappingPath, uniprotDB, 'TTC23L')
     // await fs.promises.writeFile('test/test-CITED2.json', JSON.stringify(n, null, 4))
     // console.log(await getInteractionsFromEntry(n))
-    const tmp = yield (0, _1.getInteractionsFromEntry)(yield (0, _1.getEntryFromGeneName)(idmappingPath, uniprotDB, 'UBQLN1'));
+    const n = yield (0, _1.getEntryFromGeneName)(idmappingPath, uniprotDB, 'PI3K');
+    yield fs_1.default.promises.writeFile('test/test-PI3K.json', JSON.stringify(n, null, 4));
+    const tmp = yield (0, _1.getInteractionsFromEntry)(n);
     console.log(tmp);
 }))();

+ 3 - 1
test.ts

@@ -11,6 +11,8 @@ import jsonata from 'jsonata'
     // await fs.promises.writeFile('test/test-CITED2.json', JSON.stringify(n, null, 4))
     // console.log(await getInteractionsFromEntry(n))
 
-    const tmp = await getInteractionsFromEntry(await getEntryFromGeneName(idmappingPath, uniprotDB, 'UBQLN1'))
+    const n = await getEntryFromGeneName(idmappingPath, uniprotDB, 'PI3K')
+    await fs.promises.writeFile('test/test-PI3K.json', JSON.stringify(n, null, 4))
+    const tmp = await getInteractionsFromEntry(n)
     console.log(tmp);    
 })()