我有一个如下所示的 data.frame(有 1135 行):
var1 var2 corr
590 OTU3902 K00021 0.832
624 OTU2457 K00076 0.847
770 OTU0939 K00184 0.842
774 OTU0939 K00185 0.818
792 OTU3902 K00209 0.828
1053 OTU2859 K00299 0.803
1127 OTU0001 K00320 0.845
1128 OTU0041 K00320 0.819
1129 OTU1364 K00320 0.850
1130 OTU1891 K00320 0.803
1131 OTU2859 K00320 0.841
1137 OTU2457 K00329 0.845
1409 OTU0939 K00349 0.806
1465 OTU1531 K00366 0.840
1470 OTU1531 K00367 0.847
1474 OTU0001 K00368 0.840
1475 OTU0095 K00368 0.829
1544 OTU3041 K00395 0.820
1729 …
Run Code Online (Sandbox Code Playgroud) 我有一个包含几个向量的列表,如下所示:
$`56`
[1] "OTU2998" "UniRef90_A0A1Z9FS94" "UniRef90_A0A257ESC3"
[4] "UniRef90_A0A293NAV3" "UniRef90_A0A2E1NMU8" "UniRef90_A0A2E1NPX9"
[7] "UniRef90_A0A2E1NQL1" "UniRef90_A0A2E1NRD2" "UniRef90_X0UC66"
$`57`
[1] "OTU3820" "UniRef90_A0A1Z9H3N2" "UniRef90_A0A2D5I161"
[4] "UniRef90_A0A2E6PRN5"
$`58`
[1] "OTU4452" "UniRef90_A0A1Z9KBI8" "UniRef90_A0A2E1VTI6"
[4] "UniRef90_A0A2G2KCN6" "UniRef90_UPI000BFEC744"
$`59`
[1] "OTU0245" "UniRef90_A0A1Z9MPM9" "UniRef90_A0A2E2ME98"
[4] "UniRef90_A0A2E8X9N7"
Run Code Online (Sandbox Code Playgroud)
有没有办法只提取“OTUXXX”信息?我的意思是,我想要得到这样的东西:
$`56`
[1] "OTU2998"
$`57`
[1] "OTU3820"
$`58`
[1] "OTU4452"
$`59`
[1] "OTU0245"
Run Code Online (Sandbox Code Playgroud) 我有两个文件(我只显示这些文件的开头):
模式.txt
m64071_201130_104452/13
m64071_201130_104452/26
m64071_201130_104452/46
m64071_201130_104452/49
m64071_201130_104452/113
m64071_201130_104452/147
Run Code Online (Sandbox Code Playgroud)
我的文件.txt
>m64071_201130_104452/13/ccs
ACAGTCGAGCG
>m64071_201130_104452/16/ccs
ACAGTCGAGCG
>m64071_201130_104452/20/ccs
CAGTCGAGCGC
>m64071_201130_104452/22/ccs
CACACATCTCG
>m64071_201130_104452/26/ccs
TAGACAATGTA
Run Code Online (Sandbox Code Playgroud)
我应该得到这样的输出:
>m64071_201130_104452/13/ccs
ACAGTCGAGCG
>m64071_201130_104452/26/ccs
TAGACAATGTA
Run Code Online (Sandbox Code Playgroud)
如果 patterns.txt 中的行与 myfile.txt 中的行匹配,我想创建一个新文件。我需要保留与所讨论的模式相关联的字母 ACTG。我用 :
for i in $(cat patterns.txt); do
grep -A 1 $i myfile.txt; done > my_newfile.txt
Run Code Online (Sandbox Code Playgroud)
它可以工作,但是创建新文件的速度很慢......我处理的文件很大但不是太多(patterns.txt 为 14M,myfile.txt 为 700M)。
我也尝试使用,grep -v
因为我有另一个文件,其中包含不存在于 patterns.txt 中的 myfile.txt 的其他模式。但它是相同的“速度填充文件”问题。
如果您看到解决方案..
我有这个文件:
>AX-899-Af-889-[A/G]
GTCCATTCAGGTAAAAAAAAAAAACATAACAATTGAAATTGCATGA
>AX-899-Af-889-[A/G]
GCAAACTATTTTCATGAATGAACTTCAGTTGATTGTGAGATG
>AX-899-Af-889-[G/T]
AAGGTAGAATGACACCATTAAACAGTAGGGAATTGGTCACAGAACTCT
Run Code Online (Sandbox Code Playgroud)
我需要在下一行的第 10 个位置插入[X/X]
从 开始的行中存在的模式,并替换这第 10 个字符:>
>AX-899-Af-889-[A/G]
GTCCATTCA[A/G]GTAAAAAAAAAAAACATAACAATTGAAATTGCATGA
>AX-899-Af-889-[A/G]
GCAAACTAT[A/G]TTCATGAATGAACTTCAGTTGATTGTGAGATG
>AX-899-Af-889-[G/T]
AAGGTAGAA[G/T]GACACCATTAAACAGTAGGGAATTGGTCACAGAACTCT
Run Code Online (Sandbox Code Playgroud)
我可以提取模式:
awk 'match($0, /^>/) {split($0,a,"-"); print; getline; print a[5]}1' file
Run Code Online (Sandbox Code Playgroud)
还将第 10 个字符替换为模式(例如“N”):sed 's/^\([ATCG].\{8\}\)[ATCG]/\1N/' file
我在我的存储桶上激活了版本控制。我用了 :
aws s3api put-bucket-versioning --bucket my_bucket --versioning-configuration Status=Enabled --endpoint-url https://XXXXXXXXX
Run Code Online (Sandbox Code Playgroud)
现在,我想停用该存储桶上的版本控制。所以,我有两个问题:
aws s3api put-bucket-versioning --bucket my_bucket --versioning-configuration Status=Suspended --endpoint-url https://XXXXXXXXX
或者我是否需要在“状态”行编辑 ./lifecycle.json 文件?
{
"Rules": [
{
"ID": "Delete old versions after 90 days",
"Status": "Enabled", -> Suspended
"Prefix": "",
"NoncurrentVersionExpiration": {
"NoncurrentDays": 90
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
也许,这两种解决方案都有效?
"IsLatest": true,
会被保存吗?最好的
我有这个文件:
>AX-89948491
CACCTTTT[C/T]ATTTCATTCCTAC
>AX-89940152
AGATGAGA[A/G]TAAAGCTTCTGTC
>AX-89922107
ACAGAAAT[G/T]TATAGATATTACT
Run Code Online (Sandbox Code Playgroud)
我需要找到模式“ [A-Z]/[A-Z]
”(它必须每两行出现一次);并将其放在之前的行中,如下所示:
>AX-89948491-[C/T]
CACCTTTT[C/T]ATTTCATTCCTAC
>AX-89940152-[A/G]
AGATGAGA[A/G]TAAAGCTTCTGTC
>AX-89922107-[G/T]
ACAGAAAT[G/T]TATAGATATTACT
Run Code Online (Sandbox Code Playgroud)
我做了:
awk 'tmp=/\[[A-Z]\/[A-Z]]/{if (a && a !~ /\[[A-Z]\/[A-Z]]/) print a"-"$tmp; print} {a=$0}' my_file
Run Code Online (Sandbox Code Playgroud)
但这给出了整条线,而不是图案。
有什么帮助吗?
我有这种文件
A 1,2,3,4
B 1
C 1,2
Run Code Online (Sandbox Code Playgroud)
我想得到 awk 这个输出:
A 1
A 2
A 3
A 4
B 1
C 1
C 2
C 3
Run Code Online (Sandbox Code Playgroud)
试过的代码:
sed 's/,/\n&/g' file
Run Code Online (Sandbox Code Playgroud)
对 awk 有什么想法吗?