我有 file1 喜欢:
0 AFFX-SNP-000541 NA
0 AFFX-SNP-002255 NA
1 rs12103 0.6401
1 rs12103_1247494 0.696
1 rs12142199 0.7672
Run Code Online (Sandbox Code Playgroud)
还有一个文件2:
0 AFFX-SNP-000541 1
0 AFFX-SNP-002255 1
1 rs12103 0.5596
1 rs12103_1247494 0.5581
1 rs12142199 0.4931
Run Code Online (Sandbox Code Playgroud)
并想要一个 file3 ,这样:
0 AFFX-SNP-000541 NA 1
0 AFFX-SNP-002255 NA 1
1 rs12103 0.6401 0.5596
1 rs12103_1247494 0.696 0.5581
1 rs12142199 0.7672 0.4931
Run Code Online (Sandbox Code Playgroud)
这意味着将 file2 的第 4 列按第 2 列的名称放入 file1。
我最近买了一台新的笔记本电脑,在家时用于科学研究。该机器配备 8 核 Intel i7 处理器、4 GB RAM 和 Nvidia 显卡(2 GB,Ivy Bridge)。我最需要的计算程序是 MATLAB 和 Python。
我尝试安装 Ubuntu(版本 12.10 和 13.04),但它们都很慢。当 MATLAB 100% 使用 1 个核心时,整个操作系统就会冻结。不能同时做任何事情。此外,显卡显然没有充分发挥其潜力(我要么使用 optirun 要么在启动程序时提供 DRI_PRIME 标志)并且 Unity 根本没有使用。
出于我的目的,其他一些操作系统会比 Ubuntu 更好吗?此外,我如何才能将少数核心用于操作系统,少数用于 MATLAB/Python,而将一些用于其他程序(Chrome、Messaging、LaTeX 等)?
我有一个文件夹,里面有很多文件(xyz1、xyz2,一直到 xyz5025),我需要在每个文件上运行一个脚本,得到 xyz1.faa、xyz2.faa 等等作为输出。
单个文件的命令是:
./transeq xyz1 xyz1.faa -table 11
Run Code Online (Sandbox Code Playgroud)
有没有办法自动做到这一点?也许是一个for-do组合?
这是部分文件
N W N N N N N N N N N
N C N N N N N N N N N
N A N N N N N N N N N
N N N N N N N N N N N
N G N N N N N N N N N
N C N N N C N N N N N
N C C N N N N N N N N
Run Code Online (Sandbox Code Playgroud)
在每一行中,我想计算不是“N”的所有字符的总数
我的愿望输出 …
我有一个制表符分隔的文件,如下所示:
gene v1 v2 v3 v4
g1 NA NA NA NA
g2 NA NA 2 3
g3 NA NA NA NA
g4 1 2 3 2
Run Code Online (Sandbox Code Playgroud)
每行中的字段数是固定且相同的。我想从上面的文件中删除那些行,其中从第 2 列到最后一列的每一行的所有字段都是 NA。然后输出应如下所示:
gene v1 v2 v3 v4
g2 NA NA 2 3
g4 1 2 3 2
Run Code Online (Sandbox Code Playgroud) 我有 120 个文件 (genomes.faa),每个文件之间都有标题
>GENOME1_00001 HYPOTHETICAL PROTEIN A
NQFTIAQSQVGLEDALLDL
>GENOME1_00002 HYPOTHETICAL PROTEIN B
NQFTIAQSQVGLEDALLDL
>GENOME1_00003 HYPOTHETICAL PROTEIN C
NQFTIAQSQVGLEDALLDL
etc.
Run Code Online (Sandbox Code Playgroud)
我试图删除名称后面的“_0000X”并将其替换为“|”
>GENOME1|HYPOTHETICAL PROTEIN A
NQFTIAQSQVGLEDALLDL
>GENOME1|HYPOTHETICAL PROTEIN B
NQFTIAQSQVGLEDALLDL
>GENOME1|HYPOTHETICAL PROTEIN C
NQFTIAQSQVGLEDALLDL
etc.
Run Code Online (Sandbox Code Playgroud)
我尝试这样做:
for file in *.faa
do
sed -r 's/_.*$/|/g' $file > $file.1
done
Run Code Online (Sandbox Code Playgroud)
这不会在之后保留“假设蛋白质 A”,从而导致
>ERR1156171|
MMRQSVQTVLP
Run Code Online (Sandbox Code Playgroud)
代替
>ERR1156171|HYPOTHETICAL PROTEIN A
MMRQSVQTVLP
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏!
我有这样的file1:
CHR SNP TEST A1 A2 GENO O(HET) E(HET) P
0 AFFX-SNP-000541 ALL 0 0 0/0/0 nan nan 1
0 AFFX-SNP-000541 AFF 0 0 0/0/0 nan nan NA
0 AFFX-SNP-000541 UNAFF 0 0 0/0/0 nan nan NA
0 AFFX-SNP-002255 ALL 0 0 0/0/0 nan nan 1
0 AFFX-SNP-002255 AFF 0 0 0/0/0 nan nan NA
0 AFFX-SNP-002255 UNAFF 0 0 0/0/0 nan nan NA
1 rs12103 ALL C T 55/250/317 0.4019 0.4113 0.5596
1 rs12103 AFF C T 0/0/0 nan …
Run Code Online (Sandbox Code Playgroud) 我有一个大约 500 万行长的基因组数据文件,其中应该只有字符 A、T、C 和 G。问题是,我知道文件应该有多大,但它比那个稍大。这意味着,分析中出了点问题,或者有些行包含基因组数据以外的内容。
有没有办法找到除了 A、T、C 或 G 之外的任何行?由于文件的性质,不应出现任何其他字母、空格、数字、符号。我已经逐个符号搜索过,所以我希望有一种更简单的方法。
我有以下数据块(多个)
chr1.trna4 (17188416-17188486) Length: 71 bp
Type: Gly Anticodon: CCC at 33-35 (17188448-17188450) Score: 78.3
HMM Sc=56.60 Sec struct Sc=21.70
* | * | * | * | * | * | * |
Seq: GCATTGGTGGTTCAGTGGTAGAATTCTCGCCTCCCACGCGGGAGaCCCGGGTTCAATTCCCGGCCAATGCA
Str: >>>>>>>..>>>>.......<<<<.>>>>>.......<<<<<....>>>>>.......<<<<<<<<<<<<.
Run Code Online (Sandbox Code Playgroud)
对于每个块,我需要在块的最后一行找到以Str
. 在上述情况下,第 8 个模式是.......
(7 个周期)。这是因为第一组>
符号构成一个模式,第二组周期构成第二个模式,依此类推。
现在我需要从Seq
模式行正上方的行中提取这 7 个字符。在示例中,这对应于子序列CTCCCAC
。
输出应该是 Seq is CTCCCAC and Anticodon: CCC
这在bash
或任何外壳中都可能吗?
数据块的更多示例
chr19.trna11 (4724719-4724647) Length: 73 bp
Type: Val Anticodon: CAC at 34-36 (4724686-4724684) Score: …
Run Code Online (Sandbox Code Playgroud) 我有一个集群 fasta 文件(称为 file),如下所示:
>1AB2
>1AB2 AA
NWWIEUNJRNIBGOWNGIOWGRBIGBRGRIOWGI
NCIDHFR8EHGBVPIWOBGIGRI
>1AB3 AA
WNIOREHUEBRGOUERGHBERGIORBGREUGEGO
NWFWRUBGREOUEREOBRIOBNERIOBN
>1SC4 AA
WNIOREHUEBRGOUERGHBERGIORBGREUGEGO
NWFWRUBGREOUEREOBRIOBNERIOBN
>2CD5 AA
WNIOREHUEBRGOUERGHBERGIORBGREUGEGO
NWFWRUBGREOUEREOBRIOBNERIOBN
>2AC6
>2AC6 AA
NFIGEURHGEIROHEGHTUTJGENLJBBEOWRIU
NFIROUHBOERVERUGBERUOVREOIBROEBVUE
NVHIRE
>2ONM AA
BUCIEHBUORBREOBWQVURVELLAJFLHIEBGR
NHEIBVEURIGBVNRIHEOEAJVSJDNHVUGBVR
NEBIBVVBRU
>2POD AA
BUFEWIBOEUWBWOREBRIUBGUERIGBVOSRIP
BUEIBVEO
>7KZL
>7KZL AA
BUIREBVAUREVBREOIRGPNJBFDVERUBVROR
>6GH3
>6GH3 AA
NBVUIREVOIAWRHRUGRTYUVDNJKDFHUGSEI
FHUIERBLUUIREB
>6GH4 AA
BDFUIGEVUERERHOBERIHBSDLKFJBNIERIH
NFHILRUGAURHG
Run Code Online (Sandbox Code Playgroud)
该文件有 4 组:1AB2, 2AC6, 7KZL, and 6GH3
. >1AB2
第一个和第一个期间的内容>2AC6
属于该簇1AB2
。>2AC6
第一个和第一个期间的内容>7KZL
属于该簇2AC6
。
我想在第二个文件中将文件分成 4 个文件,>XXXX
并在此索引文件(ind.txt)中使用特定名称:
HG001 1AB2
HG010 2AC6
HG023 …
Run Code Online (Sandbox Code Playgroud)