Upload Sort_Sco_Kcat.py
Browse files- Sort_Sco_Kcat.py +28 -0
Sort_Sco_Kcat.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from tname import *
|
| 2 |
+
from Rfile import *
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
def Sort_Sco_Kcat(file):
|
| 6 |
+
dlkcats = []
|
| 7 |
+
contents = j_reads(file.name)
|
| 8 |
+
|
| 9 |
+
# dlkcat sort根据kcat值对文件进行排序
|
| 10 |
+
name = Name()
|
| 11 |
+
kcatname = name + r"mkcat_sort.fa" # 结果文件名称
|
| 12 |
+
for i in range(2, len(contents)):
|
| 13 |
+
content = contents[i].split()
|
| 14 |
+
dlkcats.append(float(content[3]))
|
| 15 |
+
s_dlkcat = []
|
| 16 |
+
s_dlkcat = sorted(range(len(dlkcats)), key=lambda k: dlkcats[k], reverse=True)
|
| 17 |
+
|
| 18 |
+
# 写入文件
|
| 19 |
+
with open(kcatname, "a") as f:
|
| 20 |
+
f.write(contents[0])
|
| 21 |
+
# 第一行第二行不参与排序,直接写入
|
| 22 |
+
f.write(contents[1])
|
| 23 |
+
|
| 24 |
+
# 写入剩下的行
|
| 25 |
+
for i in range(0, len(dlkcats)):
|
| 26 |
+
with open(kcatname, "a") as f:
|
| 27 |
+
f.write(contents[s_dlkcat[i]+2])
|
| 28 |
+
return kcatname
|