从egg结果获取id和KOG的对应关系

1.txt是用excel获得的只有id和eggNOG_OGs的两列文件

如下:

id-eggnog_ogs
less -S 1.txt |sed 's/COG[0-9]\{4\}\@1|root,//g' >2.txt

cat 2.txt |sed 's/@1|root,/\t/g'|sed 's/@2759|/\t/g'|sed 's/Eukaryota,[0-9]\{1,\}.*//g'|sed 's/Eukaryota//g'|sed 's/,//g'>4.txt

获得了如下格式文件

id-kog

存在重复值,每一行如何之保留一个重复值呢

2利用如下代码,直接打开excel的查看代码

Sub test()    

    Dim arr, i, j, k, n     

    arr = [a1:f6671].Value     

    ReDim brr(1 To UBound(arr, 1), 1 To UBound(arr, 2))     

    For i = 1 To UBound(arr, 1)     

    n = 0     

    For j = 1 To UBound(arr, 2)     

    For k = 1 To j - 1     

    If arr(i, j) = arr(i, k) Then Exit For     

    Next     

    If k = j Then         

        n = n + 1: brr(i, n) = arr(i, j)         

        End If     

    Next     

    Next         

        [g1].Resize(UBound(brr, 1), UBound(brr, 2)) = brr 

End Sub
代码

代码中的[a1:f6671]是指的选定范围,[g1]是指的存放数据的起始格子。

最终结果如下:


结果

最后自己拷贝放到新的excel即可。

你可能感兴趣的:(从egg结果获取id和KOG的对应关系)