@datagrok/bio 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,101 @@
1
+ id,sequence
2
+ 1,TGTCTCAGCACCATCCAATTTGCGATTCGACCC
3
+ 2,TGTCTCTCATCAAATCATCCCTATGGTGGCCCTAATT
4
+ 3,ATTTATCAACGATCATCCCAACAAAGCGAAACCGTCAT
5
+ 4,CGAGGCCAGCCCTCATCCAATAGAACACCTTCGTG
6
+ 5,TGGGTCACCCTTCATCCCCCACTCCTACTAGGA
7
+ 6,TTTATTCATCGGTCATCCACGTGCGTATACATATG
8
+ 7,GACCTCAACTGTCCTCCGGGAGACATGCCCGAAAT
9
+ 8,CTGCATCAGCTGTCATCCCCTGGTGAGGTTTCTTGTG
10
+ 9,TATTTTCACCTATCATCGTTAATGGCTAACCGGCAT
11
+ 10,CGCCTTCAGCGGACATCCTATACAGTCGGCCCACTT
12
+ 11,ACGCTTCACCCCTCATCCATAACTTTTCGTAGTC
13
+ 12,AATCCTCAACATTCATCGCGAAGTAAAGGTCCTTTA
14
+ 13,TCGCTTTCAGCGCTCATCCCCAAATCTTCCCAAAAAG
15
+ 14,CCATGTTCATCGATCATCCGTAACGTCATACTTAGT
16
+ 15,CAAACTCATCATTTATCTATAGTCTTCCGCGAT
17
+ 16,CGTTCTCAGCCTCATCCTATGTTCAGCCGGCGT
18
+ 17,GTTAGTCATCGCTCATCCTGTCGGCAACTCCTTAC
19
+ 18,GGTCGTCACCGTTCATCCTTCAGATCAGCAATGTGTAC
20
+ 19,AGACATCAACTCTCAGCCTGCAATGATTACCGATA
21
+ 20,TGTATTCATCCTCATCCCAGGTAATGTGACTATCT
22
+ 21,ATGGTCAGCGTCCATCAGGAGAATTTTACATACG
23
+ 22,TATCTTCAGCGGACATCCTATGTCGCGCACAGACAT
24
+ 23,CCATACTCAGCTAGCATCCCAGACCGATCTCATCTC
25
+ 24,TCCCTTCAGCTTTCATCCAGACGACTGTTCAAAAA
26
+ 25,TCCGTTCAACACGCATCCTCTGACGAGACTCAAGA
27
+ 26,CGCATCAGCGATCCTCCGGCAGTGTGGCCCGCTGA
28
+ 27,TGCGCTCAACTTTCATCCTGGCGTCCAGGCGAG
29
+ 28,TTTCTTCAGCGCTCATCAAAAGGTCCCAGCCATA
30
+ 29,TCACGTCACCCATCATCCATCGGACAGACCCCCC
31
+ 30,GATTGTTCAACCCTTATCTGAGCGTTATCCCGGCGAG
32
+ 31,GAGCTTCATCCGTCATCCCACGAGAAGTACTGGTA
33
+ 32,CCTGTTCATCCTTCATCCTGAGGTACAAACCCCCT
34
+ 33,AGACGTCAGCCTTCACCGAGATTCTATTCCACATTA
35
+ 34,GTGCGTCAGCAGTCATCCTTCTGAACCGGCGGATC
36
+ 35,TTTGGTCAGCGATCATCCGTGCGATTGTTACGTCGG
37
+ 36,TTGTTTCAGCTGTCATCCAACAAGCTGGCCTATC
38
+ 37,CGGTGTCAGCCATCATTCGAACGAGTAGCCGCGGC
39
+ 38,TGGGTTCACTCCTTCATCGGGTACGGACCCCAAGCA
40
+ 39,CCTATTCATCCCCTCATCGAACAGATTAGCCGAAAC
41
+ 40,GGAGGTCACCCTTCATCCTGGTACTGGCAAGA
42
+ 41,GGCACTCAGCTCTCATCACGACTATTCGGCAGAGG
43
+ 42,CGGTATCAACGGTCATCTAACTTGATGATTCCCTCA
44
+ 43,GACTTTCACCAATCATCAGAGGGGTAGCACCTCGAA
45
+ 44,AGACGTCAACCCGCATCAAACTGGTTGCACACCA
46
+ 45,CAGTTCAGCAAATCATCCCTCTTGTACGACCCTAG
47
+ 46,CCAAATCACCGATCATCTAAACCCCTAGACAGCGC
48
+ 47,TCTGGTAAACCCTCATCCCCGATAAAGCAGCTATAA
49
+ 48,ACTATTCAACCTCATCCGAGAGCCCGCTACGT
50
+ 49,TACAAGTCAGCGGCCATCCGCCGATGTGCACTCAGC
51
+ 50,TTTAGGTTCAGCAGTTTATCCTCCAAGTTTTTCCTCA
52
+ 51,TCTATCTCAGCCTTCATCCAGAACGGTAGTCCTTGTT
53
+ 52,GGGAGCTCAGCTCTCATCAAGATAGATCACCGATT
54
+ 53,TGACTTCATCACTCATCCGACAGATCACCACTAA
55
+ 54,GCTATCAGCCCTCATCAACTAAGGCGAGCGGAAA
56
+ 55,TTTAATCAGCGGTCATCAACCCAGCGCGCACACACCG
57
+ 56,TGGCATTCATCCGTCATCCAAACGTCCGCGACCATCA
58
+ 57,TATGGTCAGCAGTCATCCGCAGCAGCAAACATGGA
59
+ 58,AAGCTCATCGGTCAGCCGACGGTAAATACTAAAG
60
+ 59,CCGTTCAGCCGACAACCGGGATTCCGCACAGCCT
61
+ 60,TTAGTCATCGATCATCCGGGATCTTACGCGTTAT
62
+ 61,GGTATCAGCATTCATCCCACAAACCAATAGCCCTCTA
63
+ 62,TACCATCAGCTGTCATCGCGTGTAGGCAGACCACCTC
64
+ 63,AGTTGTCAACCTCATCCAGACCTCCCTTCCTGAGA
65
+ 64,ACCAGTCAGCGATCATCCGCATCTGTTCCCCCGCC
66
+ 65,CTGGACCAGCTCACACCCTAGCGAGCAGGCAGGGAG
67
+ 66,CTATCGTTCAGCGATCATCCACTGGCGGATCCTTGGG
68
+ 67,AGATATCAGCGATCATCGCCGTGTCACACCTAGAC
69
+ 68,GCGGTTCAGCATCATCCGTAAGTCGATTCCGACT
70
+ 69,CCGCTTCATCGCTCATCCCTGGGGGGACGCAGAAT
71
+ 70,GATTTCAACGATCATCCTCATCGACGTTGCCAGA
72
+ 71,TGCCCTCAGCGATCATCCGATGGTGCAGGCCTCGG
73
+ 72,CGTTATCAGGCCGTCATCCACGCTGGCTACGAGCCT
74
+ 73,GCTGTTCACCGCTCATCCGATGGGTGATACATCGC
75
+ 74,TGCCCTCAGCACCCATCCCAACGGTTAGTCCGGA
76
+ 75,TGTCATCAGCGTTCATCTTTCGACCCGTACCAAAGC
77
+ 76,GGTCCCAGCATTCATCTATTTCAGGCGTACTCGG
78
+ 77,CCCTGTCAGCGGTCATCCCAGGGACGATCCGTACA
79
+ 78,CGGGTTCAGCACTCATCCTGTTGGTTTACCGACTTA
80
+ 79,TACAATCAGCGTTCATCCCGGGTTTTTCTCCTGCT
81
+ 80,CGGCATCAGCTTCATCCATTGGGTTTGTCTTGA
82
+ 81,CTCAATCAGGCTGTCATCCTCTGGGTTAGCCAATGG
83
+ 82,TGCAATCAACGATTCATCCGGCTTCCTCCTCGGAT
84
+ 83,AGGCTTCAGCTTTCATTAGGCAGACATTGCCATCCGA
85
+ 84,CCTAGTCAGTAATTCATCACAAATGAAAGAACAGTC
86
+ 85,TTCATTCAGCCCTCATCAGCCATGCCCCTCCGTC
87
+ 86,GTCATCAACTCTCATCACTAACATCAAGCGAAT
88
+ 87,GGTCTTCAACCATCATCCTGGGGATACACCTACT
89
+ 88,TCGTCTCAGCCCTCATCCCACAGTCGATACCCCCC
90
+ 89,AGAACTCAACCCTCAACCGGACAGGACCACTC
91
+ 90,AGCCGTCAGCTATCATCCTCCTTATTTGTCATAGC
92
+ 91,CGTTCAACGGTCATCCGTACCTGATCTCCTTGA
93
+ 92,CGTTCTTCATCCCTCATCCGACATGGTAGACTGGGCC
94
+ 93,TAGATTCAACGGTCATCCAGACCTACGTTCCCGACA
95
+ 94,TCTGTCAGCCATCATCCGAGTCACCATCCTTGT
96
+ 95,GGTTCTCAGCGTTCAGCCTGCCTGAGCCCGCGGCCA
97
+ 96,AGTGTTCAGCATCATCCGAATAAGGCTGCAACTT
98
+ 97,TTCGATCATCGGGCATCGCGGGGATTGTCCGACTG
99
+ 98,TTTCATCAGCGTTCATCGAGGTGTGTACCCCAACTC
100
+ 99,GTGCTTCAGCTCTCATCAGACGAAAGGGACGAGG
101
+ 100,TCCGTTCATCAGTCATCTAGCGGCGCTATCGTAGTG
@@ -0,0 +1,101 @@
1
+ id,sequence
2
+ 1,MFITMFCMFWLFIFILMMLIFFMEAMIKPML
3
+ 2,AQMTMFCIMFFLMLMFIIMIMFMILEAMKKMLNAI
4
+ 3,ILMTMFCICWMIMIFFLLLIMFMLMAMMKMLIFL
5
+ 4,FQMTMICMLFFLMMFMFDLIILFIMMEAMMKPDLMFI
6
+ 5,LLMTMFCFFMMLLMFFMFMIMFMYFEAMKKFFILF
7
+ 6,AMMTMFCFMLIMMFILLFIDIIMEAMLKLDNFI
8
+ 7,LLMTMFCMILISMIMILMMIMFLMEAMKKIFFAV
9
+ 8,LIMTMFCMLILIFMLMDFMIIMIFFEAMFKMLFLMF
10
+ 9,FQMTMFCLMIFMWIFMMMMILDIFIEAMIKFINLFM
11
+ 10,FLMTMFCILINIMIIWMIIMLMFEAMFKLDIIF
12
+ 11,FFMTMFCMMIFLLLIMIIIMIMDMIMEAMKKMMDIII
13
+ 12,IMMTMFCICLLFWLLFMLLIMDMMFEAMLKFIMMI
14
+ 13,MQMTMFCFMLLLMFFMDIMIIMLLDEAMLKLDLIL
15
+ 14,LQMTMFCIFWMLFMLFMLFIFFLFLEAMLKFINLI
16
+ 15,IIMTMFCMIMIISIFFIIMIMLFIFEAMIKLDIIAM
17
+ 16,FLMTMLCMCFILFFFLFMFIMLSFFLEALIKILILI
18
+ 17,FQMTMFCMMIFLFIMWMIIFIIFFIFEAMKMLLLL
19
+ 18,MFMTMFCMCIMFWIFDIIIIILFLIEAMLKLFFIIV
20
+ 19,IMLMTMFCMFFFMWIFMFMLIIFSLILEAMMKPDIII
21
+ 20,AFLTMFCFMWLLMLMFLFLIMIIIDEAMIKLFFL
22
+ 21,FQMTMFCFLLMSFLMIIMIFILMFFDEAMFKILNFI
23
+ 22,MIMTMFCMLMNLLMFFMLIILILMIEAMLKLMMAI
24
+ 23,MIMTMFCMIILMFHMMMFLIFILYEAMKKLFNMIV
25
+ 24,LFTMFCMCWMIMIFWIIILMIMIFLAMKKPMFLF
26
+ 25,AFLMTMFCICWFLFFLFMILIMLMFFEAMKKFFLV
27
+ 26,LLMTMFCMCMNMMMFMLIMMILMSYIEAMFKFFLI
28
+ 27,LQLTMFCFILLIFLMILLILMILFEAMMKMFFAL
29
+ 28,IQMTMFCMMMMFLMLFFIDIMFLMMEMMFKMDLMFF
30
+ 29,MMTMFCIWIFMMILDMMFFIIMIIAMMMFLLIIV
31
+ 30,FQMTMFCMMLFMFILWDIFIMISMLEAMMKLDIIM
32
+ 31,LFMTMFCMMMNFMIFWLILIFFSLFEAMKKLILAM
33
+ 32,AFMTMFCMFLWFILHLWIFFIMMLIMIEAMIKIDIAV
34
+ 33,LLTMFCMILIFWHFMFMDIMMMMIFEAMLMIFIMI
35
+ 34,IMMTMFCFCFLIFHMMIFDIMISMIEAMKKIIMLL
36
+ 35,FMMTMFCMMMLFIIMFLIMMIDILLFIDEAMMKDFIL
37
+ 36,IMMTMFCMIILFMFMFMMIIIMLFFMLEAMFKMMFF
38
+ 37,LLMTMFCMLWMMLFIFFIMLIFISLFEAMKKIFIIM
39
+ 38,FIMTMFCMMLLLFFFIILDIMLMFIEAMKKLLLL
40
+ 39,IMMTMFCFMMMSMMFFFLIIIILFMFDMAMKILLI
41
+ 40,MFMTMFCMFILILLLWIIDIMFMLDEAMKKPDFL
42
+ 41,LIMTMFCMCMFLILWMMFIMLIIIEAMKKPIILI
43
+ 42,AFMTMFCFMMMFMHFMLIFIFMIFMEAMKKFFLFLM
44
+ 43,AFIQMTMLCMCMLLMFFLDIFIIIIFLDEAMMKPLMLL
45
+ 44,LQMTMFCMFMIILFDMIMMMMMEAMLKIMIF
46
+ 45,ALMTMFCFIWNSIFIFIFDILMILLIEAMFKMDNII
47
+ 46,LMMTMFCLMLFSWLMWLMIIFIIMMILEAMLKPLFAFV
48
+ 47,FFMTMFCMFFIMFLIFFLLLIMLFMMEAMLKIFL
49
+ 48,LMMMTMFCIFMLLFFFFMFIMMMFDEAMFKMDMIL
50
+ 49,QITMFCIFFMFIIMWLFFFLFFLFEAMLKMIMAL
51
+ 50,IIMTMFCIMLILWIFLFIIIIMILIAMKKLILLL
52
+ 51,ILMTMFCMMLIIFFFMLFFILIILDFFFEAMLKIDMMI
53
+ 52,FIMTMFCMCWFILLIMMIIIFLIDEAMMKMFLMM
54
+ 53,FIMTMFCMLLMFSLMFFMMMILIFYIEAMIKMMLFI
55
+ 54,IQMTMFCMCWMFLHMMFLDILFIFLDEAMLKMIIFL
56
+ 55,FMMTMFCMLILMMHLFFFIIMDMIEAMLKMDMLV
57
+ 56,LMMTMFCMFINSMLLMMFILILMMLFEAMKKPFMIM
58
+ 57,MLMTMFCLIMNFFMFLMFMIMMMEAMFKMLM
59
+ 58,ILMTMFCLFFFSFFFILIMMIYIEAMLKIMMIL
60
+ 59,IIMMTMFCMCLLMLMFWIIMIMISFLMEAMKKFLIAM
61
+ 60,IFMTMFCMMFNSFLIFWIILMFFLLILEAMMKPLNLV
62
+ 61,IFITMFCMILLSMLFILFDIFFIIMEIMKKFIIAF
63
+ 62,IMMTMFCFCMIMFMFILFLILFLDEAMMKMLIL
64
+ 63,IFMTMFCMFLMFMIMLLFDIFLSFFEAMKKFFIAV
65
+ 64,IQMTMFCMIFFSMMFFMDMDIMIFIIEAMFKMNMLL
66
+ 65,LFMTMFCMFLLMFILFFIIMDFYFFEAMKKPMLILL
67
+ 66,AMMTMFCMLLMMFHMLDFIFDFFMEAMKKMMML
68
+ 67,AIMTMFCMFLNLMLMMFIFMMIDEAMIKFLLFI
69
+ 68,MFMTMFCMFIIFLIIMMDLIIMIIMLEAMIFILILLL
70
+ 69,IFMTMFFMFMMIIFWLMWDLMIIFSIMIMAMIKLMMAL
71
+ 70,ILMTMFCMMLFLLFFFLIIIIFSMMEAMMKPDIMM
72
+ 71,FFMTMFCMFFIFLHMIFFDIFLFFYLEAMMKPMFFI
73
+ 72,MFMTMFCMLWMFMLHIMFFLIMMMLFEAMFKFMLAF
74
+ 73,AIMTMFCMMIMMIMLFFLLILMFLIEAMFKFIFFM
75
+ 74,MMMTMFCMLMFWIIFIIFLIFILMIEAMFKMINIV
76
+ 75,LLMTMFCMLIMLIMLWLMDIMMMLIEAMKKPLMFFL
77
+ 76,LQITMFIMMWILLFMIFIFILFFEAMMKFMLF
78
+ 77,ILMTMFCIFFIFFMFMFMFFIMFFLIEAMKKLDIML
79
+ 78,MLMTMLCMMMFSLLIFIFLDIIIFILEAMLKFMMI
80
+ 79,ILMTMFCMCMMMIMMIIIIMDSFLEAMKKPMMMI
81
+ 80,QMTMFCMMFFIIHMMIIFFMDLIMMLAMKKPDMAI
82
+ 81,LLMTMICILFFMFMFLMMLIIMFLYFEAMMKMLNII
83
+ 82,MMMMFCMFIFFIHFMLILIMLIYMMIMKIMMNML
84
+ 83,ALMTMFCMFIFFMLMMMIIIFFFFEAMMKMFIFV
85
+ 84,ALMTMFCMWLILMWFMIIILMMDEAMKKLLNIL
86
+ 85,LIIMTMFCMMLLLIIMMFLIFIFLLEAMIKFLLFLL
87
+ 86,MLMTMFCMLLMFHFLIMMILISYFEAMKKLIFML
88
+ 87,FIMTMFCMMIFIFFFMFDIILSMMAMFKIDLIM
89
+ 88,FMTMFCMMWLSLFFMFLILFFIFIEAMFKLMNFV
90
+ 89,MMMTMMCMLLIMFLFMFIMFIFMLIEAMKKLDLLI
91
+ 90,AFMTMFCFMFISWMMIIFMLIMFILFEAMMKMFFFL
92
+ 91,LIMTMFCMIWFIMHFLILMLIMILYLEAMFKPLIFF
93
+ 92,MIMTMFCMFINLWIFFLLDIFFLIMEAMKLDMIM
94
+ 93,LLMTMFCMFIIMLFFLFMFLIMFFIDEAMFKPLFIM
95
+ 94,FFMTMFCIFFMSLHLFMLLIIFMFDEAMKKMLLFI
96
+ 95,IFFTMFLIFLLFIMMMIDMIIFILLEAMKKPMFII
97
+ 96,MFMMTMFCFMIIFFMMMDIMIIMDFILEAMLKIFLIII
98
+ 97,IIMTMFCMIINMLFFDLLIIILLEAMLKFDMFF
99
+ 98,MLMTMFCMLLIMFMILILMFIFLLYDEAMKKMLMLI
100
+ 99,LFMTMFCMLINSLIMIFFDIIIFLEAMFKFFLILL
101
+ 100,FLMTMFCMMMFSMMMMFIIFMLLIEAMLKIFNAL
@@ -0,0 +1,101 @@
1
+ id,sequence
2
+ 1,AAGGCCAGCAAAGUCUUCACGAGAGCGCGGAAACUU
3
+ 2,AGGCCAUACGACUAAUUCUGAAUCUGCGGAAAUCA
4
+ 3,GUGCCCGCAUCUUCAGUGGUGUAAUUUGCGGAUGCUCG
5
+ 4,GGGCCAGAAUACAUAGCUAAGCAGCUGCGAACGGUA
6
+ 5,CUGCCAGCCUUGAAAAGGCGGUCGCGCGGAGCUAA
7
+ 6,AGGCCAGCUUCUCACUGUCUCGUUCGCGGAUAGCA
8
+ 7,UAGCCAGCAAUAUUAGUAGGAAUAGCGGAGGCCA
9
+ 8,ACGCCAGUACCGCGCAUAGGAGCAGCGUACCCUA
10
+ 9,AUGCCAGCUCAUCACCAUAGCCCUGCGGAUGGCCG
11
+ 10,ACGCCAGCAAUAGCACCUAGUCCCUUGCGGACAUCA
12
+ 11,CGGCCAGCUGCUCUCGGGGACUAGCGAAUGGGG
13
+ 12,CUCCCAGCCAGACAUGCGUGAGUCUAGCGUAACAC
14
+ 13,GGGCCAGCCUGAUUUGGCGCGAACGAGCGGAACGA
15
+ 14,CUGUCCAGCAUUUGGGAGCAGUUCUAGCGCACGGCG
16
+ 15,GCGCCAGCUCGUUUUGCGGUGUGCGUGCGGAACUA
17
+ 16,UCGCCGGCCGUUGUUACCGGACAUGCGGCAAGUCU
18
+ 17,GGGCCAGCGGUAACCGGAGGCGUGUGCGUAUGCUA
19
+ 18,UGGCCAGUGUUAUCAUUGAUGGGCGCACAAAA
20
+ 19,GGGCCAGCAAAUCGUAGGAAGUAAAUGCGCAUCCCA
21
+ 20,GGGCCAGGAAUCAAUAAGUGCAGGAGCGUAACAU
22
+ 21,UAUGCCAGCGGGCGAUGUGAAUAAUUCGCGGACCGGU
23
+ 22,GUACCAGAAUAGAAUGCUAGAUACGGCGAAUUGCA
24
+ 23,CGGCCAGCCCGCGGCAGCGCGUUAGCGGACGCGU
25
+ 24,GUGCCAGCUCUGUUCCUCCGCUUAGGCGAAUCUG
26
+ 25,GUGCCAGCGCAAUUCGCGAGCCAUGUGCGCAGCACG
27
+ 26,AAGCCAGCCACGCCUGAGAGGCAUCCUCGCGGACGCC
28
+ 27,UGCCUGUCGACGGCCGAGCGGCGGCGUACGAGC
29
+ 28,CGGCCAGCGAUCUUUUUGUGGGGGGGCGCACAAAU
30
+ 29,CAAGCCAGCAAGCUACAUAGGGUGUGCGGAGGUA
31
+ 30,CGGCCAGCCCCACUUACGUAGUGUAGCGCAUUCUA
32
+ 31,GGCCCAGCAACGUUCGAAUGCACCGGCGUAACCGC
33
+ 32,UAGCCAGCUUCUUAACACAUGCACGAGCGAAGAACG
34
+ 33,GAGGUAGCCUAACAAGGAUUAGUUUGGGCGGAUGACU
35
+ 34,UGGCCUGACGUAACCAUUCGAACAGCGGACGCGG
36
+ 35,GGCCAGCUUGUCUUAACCGAAUGAGCGAAAGUUU
37
+ 36,GUGCCAGCGCGCGGCGACGCAACAGCGGUAGCGU
38
+ 37,UUGCCAGCGUGUGGAGCCGAUUUGCGCAAUGUA
39
+ 38,GACGCCAGCUCGGAGAUAGUGAUGAUGCGGAUAGGG
40
+ 39,CAGCCAGAUCAUCGUAAGAGAGUGCGGAACCA
41
+ 40,UUGCCAGGUAGCAUUCGCUGAGGGGCGGAGAGAA
42
+ 41,CGGCCGGCGUGAGUAAGGUGCACUUGCGGAGUUGG
43
+ 42,UGACCAGCCAGGCCCUGAUGAAUGCGGCGGAAUCUU
44
+ 43,CAGCCAGCCCCGGCAAGGUAGCGUCAGCGGAUUGGA
45
+ 44,AGGCCAGCAAGAAGCGCAGCACGCCGGGGACCAC
46
+ 45,UCGCCAGCUAGUUGACAUAGAAUACGCGGACAAGUA
47
+ 46,GUGCCUGCUUCAAAAGAGGGUCCGCGCACCCGG
48
+ 47,GAGCCAGAUGGGCCAGGUGUAGUUGAGGACCCG
49
+ 48,UGGCCUGCGGGCAUGUCAAGGUCAAGCGGAUAUA
50
+ 49,GCGCCAGUGACCGUCUUAUGACUUAACGGGCUCA
51
+ 50,GGCCAGAUGUCACGGUUUGCUGAGGCGGACGGA
52
+ 51,ACGCCAGAUAUUCACGACCCGGGGCCGCGGAAGGUU
53
+ 52,CUGCCAGCUUUUAUAAGCAGGUAUGUGCGCAUCAAUG
54
+ 53,ACGCCAGUUACUGCAAAACGCACAGCGCACCCAC
55
+ 54,GCGCCAGACUCGUAGGCUCGCUGGGUGCGGAUGUAA
56
+ 55,GAGCCAGCAGUAGCGAUAGGUUGCCGCGGAGCCGG
57
+ 56,AGGCCUGCUUGCCCCGGGAAUGGGCCUGCGUAGCUG
58
+ 57,UAGCCAAGUGACAACUGUAGGUCGCGCGAAUGCCC
59
+ 58,CAGCCAGCUGUUCUCAGCGUGGGAGCGGAAGCAG
60
+ 59,CCUCCAGGUAUAUGGACGGCAGCUGCGGAUAUGA
61
+ 60,CCGCCAGCGAACUAAAAAGGACGGCAGCGAAAUCUG
62
+ 61,ACGCCAGCAAAAAACGGGUGUGUGUGCGGAUUUGA
63
+ 62,GGACCAGUUAUGAUGUAGAGGAAGAGCAGAACAAUA
64
+ 63,GGGCCAGCCGGUUCACCGGACGGUGCGGAAGGC
65
+ 64,GGACCAGCGGCAGACCGACGCCUGUGCGUAUUAAA
66
+ 65,GUGCCAGCGGUCUCCGCCAGUAUCGGCGUAUCUCA
67
+ 66,UAGCCAGCUAAAUACUCACGGGUUUGCGGAACCCG
68
+ 67,GUGCCAGCGCGGUUACAGGGCAGCAGGCGGACGACA
69
+ 68,UGGCCAGCAGCCGACUCGCCAGUGCGGACUAC
70
+ 69,GGCCACCGAGCACGGGUUGUACGUGCGGAUGAGCG
71
+ 70,UAGCCAGCCCUAGUCAGACGAGAACGCGAAUAUGUGG
72
+ 71,UUGGCCAGCGCAGCGUCAUCGCCGCGCGCAUGUG
73
+ 72,CAGCCAGCCGCUCAUGAAAGCUGAGCGUAUUAA
74
+ 73,CGGCCAGCUGUGAACACGCAGUAGCUGCGCAGUCC
75
+ 74,AAGCCAGGUUUCGUCGCCCUGCUGGAUCGCAUCGCAG
76
+ 75,UAGCCAGCUAGCUUUAGCGAAGGCAAGCGGCCGGAAC
77
+ 76,GAGCCGGUAAAUGCCGCCGAGCAGCACCGGAUUAGC
78
+ 77,CCAGCCAGCCAUGAUCACGCGUUCUCAGCGGAUGCGA
79
+ 78,GGGCCAGCCUUUUACGCGUCCCCGCGUAGAAA
80
+ 79,GGGCCAGCUUCACGAUGUACGACCCGGGGGAACCUG
81
+ 80,GACCGUUGGCCGGUGAAGCAUCUGCGGAUGCAA
82
+ 81,AGGCCAGGAAAUUCCUGAGAGAUAUCCGGACGCCC
83
+ 82,AGGCCAGCCAUCAUACCCCUGUUGAAAAGGCGGAUAUGA
84
+ 83,CAGCCAGGUGUCAUAAGCGGCCUCCGCGAAAGGA
85
+ 84,GCGCCGGCGGUUGCAUCGGACCUAGCGCAUGCGC
86
+ 85,GGGCCAGCGUGUUAAUUGUGAUCACGCGUAAAGUGU
87
+ 86,UAGCCAGCUAUGGGACAAGUAAGGCGAACGCAU
88
+ 87,GUGCCAGCAAUAAUACCUAAGAUUCAGCGGAGGAU
89
+ 88,AGCCCCAGAUUUGUACCUCAGUCUGCGGCGGAGUGA
90
+ 89,UGGCCAGUCUCAACGCAUGAGCACGCGAACGACA
91
+ 90,AAGCCAGCCUUCGCUGGAUGGAUUUGCGCAACCUA
92
+ 91,GUGCCAGUGAUUAACGGAUUCUGCUGCGGACUCCC
93
+ 92,GGGCCGGAUACUCUGAUGCUGCAGAAGCGAAGUGAU
94
+ 93,UUCGCCAGGAGAUAUCCUAUGGGUGGUGCGCAACAA
95
+ 94,UAGCCACCUCAAUAUGCAAUGGUGCAGCGGAGGCGA
96
+ 95,GCGCCAGCUAUUCUGGUGGGUCUCUGCGGAUACUG
97
+ 96,GAGCCAGGGUACCUCAUUCGCCGCACGCGUAGCCUGA
98
+ 97,GAGCCAGGAGGUUCGUUAGGAAUCUGCGGAAGGGA
99
+ 98,AAACCAGGAUCAAUAACAAGAAGACGCGCACAGCGC
100
+ 99,GAGCCAGCGGGUUUUUGAGGAGAUCUGCGGACGUUC
101
+ 100,GAGCCAGCUACCGAAAGGGCACAGCGGACUUUACG
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@datagrok/bio",
3
3
  "beta": false,
4
4
  "friendlyName": "Bio",
5
- "version": "1.6.0",
5
+ "version": "1.7.0",
6
6
  "description": "Bio is a [package](https://datagrok.ai/help/develop/develop#packages) for the [Datagrok](https://datagrok.ai) platform",
7
7
  "repository": {
8
8
  "type": "git",
@@ -0,0 +1,70 @@
1
+ require(tidyverse)
2
+ library(random)
3
+
4
+ alphabetDna <- c('A','C','G','T')
5
+ alphabetRna <- c('A','C','G','U')
6
+ alphabetPt <- c('G', 'L', 'Y', 'S', 'E', 'Q', 'D', 'N', 'F', 'A',
7
+ 'K', 'R', 'H', 'C', 'V', 'P', 'W', 'I', 'M', 'T',)
8
+
9
+ toAlphabet <- function(v, a;ph){
10
+ paste(sapply(v, function(ci){ alph[ci]; }), collapse = '')
11
+ }
12
+
13
+ mutateString <- function(s, p){
14
+
15
+ }
16
+
17
+ seq <- toAlphabet(sample.int(4, 35, replace=TRUE), alphabet);
18
+ seqPt <- toAlphabet(sample.int(20, 35, replace=TRUE), alphabetPt);
19
+ seqDna <- toAlphabet(sample.int(4, 35, replace=TRUE), alphabetDna);
20
+ seqRna <- toAlphabet(sample.int(4, 35, replace=TRUE), alphabetRna);
21
+ # probability to mutate
22
+ seq_p1 <- c(100, 100, 100, 100, 100, 5, 2, 2, 50, 3,
23
+ 100, 100, 7, 2, 2, 7, 2, 33, 100, 100,
24
+ 100, 100, 100, 100, 100, 100, 100, 100, 100, 2,
25
+ 100, 100, 100, 100, 100)
26
+ seq_p2 <- c(100, 100, 7, 2, 2, 7, 2, 33, 100, 100,
27
+ 100, 100, 100, 100, 100, 100, 100, 100, 100, 2,
28
+ 100, 100, 100, 100, 100, 5, 2, 2, 50, 3,
29
+ 100, 100, 100, 100, 100)
30
+
31
+ # mutate string s with probability p and alphabet
32
+ seq_mutate <- function(s, p, alphabet){
33
+ # s <- seqDna
34
+ # p <- seq_p
35
+ # alphabet <- alphabetDna
36
+ res_s <- s
37
+ res_p <- p
38
+ for (i in 1:(str_length(res_s)*2)) {
39
+ pos <- sample.int(str_length(res_s), 1)
40
+ if (sample.int(100, 1) < res_p[pos]) {
41
+ cast <- sample.int(100, 1) # mutation type probabilty
42
+ if (0 < cast && cast <= 2 ) {
43
+ #insertion
44
+ res_s <- paste(substr(res_s, 1, pos), alphabet[sample.int(4, 1)], substr(res_s, pos+1, str_length(res_s)), collapse='', sep='')
45
+ res_p <- c(res_p[1:pos], c(100), res_p[(pos+1):length(res_p)])
46
+ #cat('insertion');
47
+ } else if (2 < cast && cast <= 4 ) {
48
+ # deletion
49
+ res_s <- paste(substr(res_s, 1, pos-1), substr(res_s, pos+1, str_length(res_s)), collapse = '', sep='')
50
+ res_p <- c(res_p[1: (pos-1)], res_p[(pos+1):length(res_p)])
51
+ #cat('deletion');
52
+ } else {
53
+ # replace
54
+ res_s <- paste(substr(res_s, 1, pos-1), alphabet[sample.int(4, 1)], substr(res_s, pos+1, str_length(res_s)), collapse='', sep='')
55
+ #cat('replace')
56
+ }
57
+ #cat(res, '\n')
58
+ }
59
+ }
60
+ res_s;
61
+ }
62
+
63
+ fastaDna_df <- data.frame(id = 1:100, sequence = sapply(1:100, function(id){ seq_mutate(seqDna, seq_p1, alphabetDna)}));
64
+ write_csv(fastaDna_df, 'D:/HOME/atanas/Datagrok/projs/public/packages/Bio/files/samples/sample_FASTA_DNA.csv');
65
+
66
+ fastaRna_df <- data.frame(id = 1:100, sequence = sapply(1:100, function(id){ seq_mutate(seqRna, seq_p2, alphabetRna)}));
67
+ write_csv(fastaRna_df, 'D:/HOME/atanas/Datagrok/projs/public/packages/Bio/files/samples/sample_FASTA_RNA.csv');
68
+
69
+ fastaPt_df <- data.frame(id = 1:100, sequence = sapply(1:100, function(id){ seq_mutate(seqPt, seq_p2, alphabetPt)}));
70
+ write_csv(fastaPt_df, 'D:/HOME/atanas/Datagrok/projs/public/packages/Bio/files/samples/sample_FASTA_PT.csv');
package/src/package.ts CHANGED
@@ -21,6 +21,8 @@ import {getMacroMol} from './utils/atomic-works';
21
21
  import {MacromoleculeSequenceCellRenderer} from './utils/cell-renderer';
22
22
  import {Column} from 'datagrok-api/dg';
23
23
  import {SEM_TYPES} from './utils/constants';
24
+ import { delay } from '@datagrok-libraries/utils/src/test';
25
+ import { TableView } from 'datagrok-api/dg';
24
26
 
25
27
  //tags: init
26
28
  export async function initBio(): Promise<void> {
@@ -173,6 +175,21 @@ export async function toAtomicLevel(df: DG.DataFrame, macroMolecule: DG.Column):
173
175
  if (!checkInputColumn(macroMolecule, 'To Atomic Level'))
174
176
  return;
175
177
 
178
+ let currentView: TableView;
179
+ for (let view of grok.shell.tableViews) {
180
+ if (df.name === view.name) {
181
+ currentView = view;
182
+ }
183
+ }
184
+ const file = await _package.files.readAsText('samples/sar-small.csv');
185
+ const df2 = DG.DataFrame.fromCsv(file);
186
+ const v = grok.shell.addTableView(df2);
187
+ setTimeout(()=> {
188
+ grok.shell.closeTable(df2);
189
+ v.close();
190
+ grok.shell.v = currentView;
191
+ }, 100);
192
+
176
193
  const monomersLibFile = await _package.files.readAsText(HELM_CORE_LIB_FILENAME);
177
194
  const monomersLibObject: any[] = JSON.parse(monomersLibFile);
178
195
  const atomicCodes = getMolfilesFromSeq(macroMolecule, monomersLibObject);
@@ -181,7 +198,8 @@ export async function toAtomicLevel(df: DG.DataFrame, macroMolecule: DG.Column):
181
198
  const col = DG.Column.fromStrings('regenerated', result);
182
199
  col.semType = DG.SEMTYPE.MOLECULE;
183
200
  col.tags[DG.TAGS.UNITS] = 'molblock';
184
- df.columns.add(col);
201
+ df.columns.add(col, true);
202
+
185
203
  }
186
204
 
187
205
 
@@ -104,6 +104,7 @@ MWRSWY-CKHP
104
104
  peptidesComplex = 'peptidesComplex',
105
105
  fastaCsv = 'fastaCsv',
106
106
  fastaFasta = 'fastaFasta',
107
+ fastaPtCsv = 'fastaPtCsv',
107
108
  msaComplex = 'msaComplex',
108
109
  helmCsv = 'helmCsv',
109
110
  testDemogCsv = 'testDemogCsv',
@@ -117,6 +118,7 @@ MWRSWY-CKHP
117
118
  'peptidesComplex': 'System:AppData/Bio/samples/peptides_complex_msa.csv',
118
119
  'fastaCsv': 'System:AppData/Bio/samples/sample_FASTA.csv',
119
120
  'fastaFasta': 'System:AppData/Bio/samples/sample_FASTA.fasta',
121
+ 'fastaPtCsv': 'System:AppData/Bio/samples/sample_FASTA_PT.csv',
120
122
  'msaComplex': 'System:AppData/Bio/samples/sample_MSA.csv',
121
123
  'helmCsv': 'System:AppData/Bio/samples/sample_HELM.csv',
122
124
  'testDemogCsv': 'System:AppData/Bio/samples/testDemog.csv',
@@ -294,6 +296,10 @@ MWRSWY-CKHP
294
296
  test('samplesTestSmiles2NegativeSmiles', async () => {
295
297
  await _testNeg(readSamples(Samples.testSmiles2Csv), 'SMILES');
296
298
  });
299
+
300
+ test('samplesFastaPtPosSequence', async () => {
301
+ await (_testPos(readSamples(Samples.fastaPtCsv), 'sequence', 'fasta:SEQ:PT'));
302
+ });
297
303
  });
298
304
 
299
305
  export async function _testNeg(readDf: DfReaderFunc, colName: string) {
@@ -1,32 +1,36 @@
1
- import * as C from "./constants";
1
+ import * as C from './constants';
2
2
  import * as DG from 'datagrok-api/dg';
3
- import {AminoacidsPalettes} from "@datagrok-libraries/bio/src/aminoacids";
4
- import {NucleotidesPalettes} from "@datagrok-libraries/bio/src/nucleotides";
5
- import {UnknownSeqPalettes} from "@datagrok-libraries/bio/src/unknown";
6
- import {SplitterFunc, WebLogo} from "@datagrok-libraries/bio/src/viewers/web-logo";
7
- import {SeqPalette} from "@datagrok-libraries/bio/src/seq-palettes";
3
+ import {AminoacidsPalettes} from '@datagrok-libraries/bio/src/aminoacids';
4
+ import {NucleotidesPalettes} from '@datagrok-libraries/bio/src/nucleotides';
5
+ import {UnknownSeqPalettes} from '@datagrok-libraries/bio/src/unknown';
6
+ import {SplitterFunc, WebLogo} from '@datagrok-libraries/bio/src/viewers/web-logo';
7
+ import {SeqPalette} from '@datagrok-libraries/bio/src/seq-palettes';
8
8
  import * as ui from 'datagrok-api/ui';
9
9
 
10
10
  const lru = new DG.LruCache<any, any>();
11
- const undefinedColor = 'rgb(100,100,100)';
11
+ const undefinedColor = 'rgb(100,100,100)';
12
12
 
13
- function getPalleteByType(paletteType: string): SeqPalette {
13
+ function getPalleteByType(paletteType: string): SeqPalette {
14
14
  switch (paletteType) {
15
- case 'PT':
16
- return AminoacidsPalettes.GrokGroups;
17
- case 'NT':
18
- return NucleotidesPalettes.Chromatogram
19
- // other
20
- default:
21
- return UnknownSeqPalettes.Color;
15
+ case 'PT':
16
+ return AminoacidsPalettes.GrokGroups;
17
+ case 'NT':
18
+ return NucleotidesPalettes.Chromatogram;
19
+ case 'DNA':
20
+ return NucleotidesPalettes.Chromatogram;
21
+ case 'RNA':
22
+ return NucleotidesPalettes.Chromatogram;
23
+ // other
24
+ default:
25
+ return UnknownSeqPalettes.Color;
22
26
  }
23
27
  }
24
28
 
25
29
  export function processSequence(subParts: string[]): [string[], boolean] {
26
30
  const simplified = !subParts.some((amino, index) =>
27
- amino.length > 1 &&
28
- index != 0 &&
29
- index != subParts.length - 1);
31
+ amino.length > 1 &&
32
+ index != 0 &&
33
+ index != subParts.length - 1);
30
34
 
31
35
  const text: string[] = [];
32
36
  const gap = simplified ? '' : ' ';
@@ -38,6 +42,7 @@ export function processSequence(subParts: string[]): [string[], boolean] {
38
42
  });
39
43
  return [text, simplified];
40
44
  }
45
+
41
46
  /**
42
47
  * A function that prints a string aligned to left or centered.
43
48
  *
@@ -55,10 +60,10 @@ export function processSequence(subParts: string[]): [string[], boolean] {
55
60
  * @return {number} x coordinate to start printing at.
56
61
  */
57
62
  function printLeftOrCentered(
58
- x: number, y: number, w: number, h: number,
59
- g: CanvasRenderingContext2D, s: string, color = undefinedColor,
60
- pivot: number = 0, left = false, hideMod = false, transparencyRate: number = 1.0,
61
- separator: string = '', last:boolean = false): number {
63
+ x: number, y: number, w: number, h: number,
64
+ g: CanvasRenderingContext2D, s: string, color = undefinedColor,
65
+ pivot: number = 0, left = false, hideMod = false, transparencyRate: number = 1.0,
66
+ separator: string = '', last: boolean = false): number {
62
67
  g.textAlign = 'start';
63
68
  let colorPart = s.substring(0);
64
69
  let grayPart = separator;
@@ -113,19 +118,19 @@ export class MacromoleculeSequenceCellRenderer extends DG.GridCellRenderer {
113
118
  * @memberof AlignedSequenceCellRenderer
114
119
  */
115
120
  render(
116
- g: CanvasRenderingContext2D, x: number, y: number, w: number, h: number, gridCell: DG.GridCell,
117
- cellStyle: DG.GridCellStyle,
121
+ g: CanvasRenderingContext2D, x: number, y: number, w: number, h: number, gridCell: DG.GridCell,
122
+ cellStyle: DG.GridCellStyle,
118
123
  ): void {
119
124
  const grid = gridCell.grid;
120
125
  const cell = gridCell.cell;
121
126
  const tag = gridCell.cell.column.getTag(DG.TAGS.UNITS);
122
127
  if (tag === 'HELM') {
123
- let host = ui.div([], { style: { width: `${w}px`, height: `${h}px`}});
128
+ let host = ui.div([], {style: {width: `${w}px`, height: `${h}px`}});
124
129
  host.setAttribute('dataformat', 'helm');
125
130
  host.setAttribute('data', gridCell.cell.value);
126
131
  gridCell.element = host;
127
132
  //@ts-ignore
128
- var canvas = new JSDraw2.Editor(host, { width: w, height: h, skin: "w8", viewonly: true });
133
+ var canvas = new JSDraw2.Editor(host, {width: w, height: h, skin: 'w8', viewonly: true});
129
134
  var formula = canvas.getFormula(true);
130
135
  if (!formula) {
131
136
  gridCell.element = ui.divText(gridCell.cell.value, {style: {color: 'red'}});
@@ -138,7 +143,7 @@ export class MacromoleculeSequenceCellRenderer extends DG.GridCellRenderer {
138
143
  lru.set(gridCell.cell.value, result);
139
144
  }
140
145
  } else {
141
- const [type, subtype, paletteType] = gridCell.cell.column.getTag(DG.TAGS.UNITS).split(":");
146
+ const [type, subtype, paletteType] = gridCell.cell.column.getTag(DG.TAGS.UNITS).split(':');
142
147
  w = grid ? Math.min(grid.canvas.width - x, w) : g.canvas.width - x;
143
148
  g.save();
144
149
  g.beginPath();
@@ -154,9 +159,9 @@ export class MacromoleculeSequenceCellRenderer extends DG.GridCellRenderer {
154
159
  const palette = getPalleteByType(paletteType);
155
160
 
156
161
  const separator = gridCell.cell.column.getTag('separator') ?? '';
157
- const splitterFunc: SplitterFunc = WebLogo.getSplitter(units, gridCell.cell.column.getTag('separator') );// splitter,
162
+ const splitterFunc: SplitterFunc = WebLogo.getSplitter(units, gridCell.cell.column.getTag('separator'));// splitter,
158
163
 
159
- const subParts:string[] = splitterFunc(cell.value);
164
+ const subParts: string[] = splitterFunc(cell.value);
160
165
  // console.log(subParts);
161
166
 
162
167
  const textSize = g.measureText(subParts.join(''));
@@ -1,4 +1,4 @@
1
- <html><head><meta charset="utf-8"/><title>Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=34f75e5127b8. Commit 95c6fae9.</title><style type="text/css">html,
1
+ <html><head><meta charset="utf-8"/><title>Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=34f75e5127b8. Commit 7af21e5d.</title><style type="text/css">html,
2
2
  body {
3
3
  font-family: Arial, Helvetica, sans-serif;
4
4
  font-size: 1rem;
@@ -229,7 +229,7 @@ header {
229
229
  font-size: 1rem;
230
230
  padding: 0 0.5rem;
231
231
  }
232
- </style></head><body><div id="jesthtml-content"><header><h1 id="title">Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=34f75e5127b8. Commit 95c6fae9.</h1></header><div id="metadata-container"><div id="timestamp">Started: 2022-07-12 11:55:44</div><div id="summary"><div id="suite-summary"><div class="summary-total">Suites (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div><div id="test-summary"><div class="summary-total">Tests (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div></div></div><div id="suite-1" class="suite-container"><div class="suite-info"><div class="suite-path">/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts</div><div class="suite-time warn">112.789s</div></div><div class="suite-tests"><div class="test-result failed"><div class="test-info"><div class="test-suitename"> </div><div class="test-title">TEST</div><div class="test-status">failed</div><div class="test-duration">100.002s</div></div><div class="failureMessages"> <pre class="failureMsg">Error: thrown: "Exceeded timeout of 100000 ms for a test.
232
+ </style></head><body><div id="jesthtml-content"><header><h1 id="title">Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=34f75e5127b8. Commit 7af21e5d.</h1></header><div id="metadata-container"><div id="timestamp">Started: 2022-07-12 16:48:34</div><div id="summary"><div id="suite-summary"><div class="summary-total">Suites (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div><div id="test-summary"><div class="summary-total">Tests (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div></div></div><div id="suite-1" class="suite-container"><div class="suite-info"><div class="suite-path">/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts</div><div class="suite-time warn">113.338s</div></div><div class="suite-tests"><div class="test-result failed"><div class="test-info"><div class="test-suitename"> </div><div class="test-title">TEST</div><div class="test-status">failed</div><div class="test-duration">100.002s</div></div><div class="failureMessages"> <pre class="failureMsg">Error: thrown: "Exceeded timeout of 100000 ms for a test.
233
233
  Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."
234
234
  at Object.&lt;anonymous&gt; (/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:22:1)
235
235
  at Runtime._execModule (/home/runner/work/public/public/packages/Bio/node_modules/jest-runtime/build/index.js:1646:24)