小编sue*_*ene的帖子

根据共同的2列正确连接两个文件

我有两个文件,我试图加入/合并基于列12.它们看起来像这样,file1(58210线)比file2(815530线)短得多,我想根据字段12索引找到这两个文件的交集:

file1:

2L      25753   33158
2L      28813   33158
2L      31003   33158
2L      31077   33161
2L      31279   33161
3L      32124   45339
3L      33256   45339
...
Run Code Online (Sandbox Code Playgroud)

file2:

2L      20242   0.5     0.307692307692308
2L      22141   0.32258064516129        0.692307692307692
2L      24439   0.413793103448276       0.625
2L      24710   0.371428571428571       0.631578947368421
2L      25753   0.967741935483871       0.869565217391304
2L      28813   0.181818181818182       0.692307692307692
2L      31003   0.36    0.666666666666667
2L      31077   0.611111111111111       0.931034482758621
2L      31279   0.75    1
3L …
Run Code Online (Sandbox Code Playgroud)

unix awk join

10
推荐指数
2
解决办法
2万
查看次数

awk解决方案,用于将当前行与下一行进行比较,并根据条件打印其中一行

我有一个看起来像这样的输入文件(第一列是位置编号,第二列是应该随时间增加的计数):

1       0
1       2
1       6
1       7
1       7
1       8
1       7
1       7
1       9
1       9
1       10
1       10
1       9
1       10
1       10
1       10
1       10
1       10
1       10
1       9
1       10
1       10
1       10
1       10
1       10
1       10
Run Code Online (Sandbox Code Playgroud)

并且我想修复它看起来像这样(替换计数随先前计数减少):

1       0
1       2
1       6
1       7
1       7
1       8
1       8
1       8
1       9
1       9
1       10
1       10
1       10 …
Run Code Online (Sandbox Code Playgroud)

awk getline

8
推荐指数
1
解决办法
1万
查看次数

R:计算一个嵌套列表的每个子列表中有多少个向量元素

我正在使用中的一些数据R,并且有一个载体(例如基因列表),我想知道该载体的多少个成员出现在列表列表(例如在不同时间表达的基因列表)的子列表中点)。我可以通过检查来手动完成此操作,x[] %in% y[[]]或者is.element(x[], y[[]])尝试找出如何编写R函数为我执行此操作的方法,因为我有一些这样的向量和长列表。这是一个玩具示例:

mylist <- list("Hr01" = c("G0295801", "G0295799", "G0293928", "G0293730", "G0293626", "G0293536", "G0293364", "G0291640", "G0291233", "G0290907"), "Hr02" =c ("G0295801", "G0295701", "G0295689", "G0293730", "G0293626", "G0293364", "G0293360", "G0293276", "G0293066", "G0292860", "G0292814", "G0292028", "G0292014", "G0291824"), "Hr03" = c("G0295701", "G0293364", "G0293276", "G0291714", "G0291253", "G0290405", "G0290259", "G0289553", "G0284885"))

checklist <- as.vector(c("G0290907", "G0295701", "G0270472", "G0283625", "G0284885"))
Run Code Online (Sandbox Code Playgroud)

这将是可以得到这样的事情作为输出(数据帧,与列:子表的名称,有多少成员checklist发生在子列表mylist):

"Hr01" 1
"Hr02" 1
"Hr03" 2
Run Code Online (Sandbox Code Playgroud)

我将不胜感激任何帮助!

r

3
推荐指数
1
解决办法
1010
查看次数

标签 统计

awk ×2

getline ×1

join ×1

r ×1

unix ×1