|
发表于 2021-12-26 10:48:20
|
显示全部楼层
本楼为最佳答案
本帖最后由 傻眼貓咪 于 2021-12-26 11:00 编辑
- data = """block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment2
- block10_scaffold_1...alignment315
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block10_scaffold_1...alignment665
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment2
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664
- block12_scaffold_1...alignment664"""
- arr = dict()
- for each in data.split("\n"):
- a, b = each.split("...")
- if a in arr:
- arr[a][0] += 1
- if(b in arr[a][1]):
- arr[a][1][b] += 1
- else:
- arr[a][1][b] = 1
- else:
- arr[a] = [1, dict()]
- arr[a][1][b] = 1
- for each in arr.items():
- key, res = each
- a, b = res
- print(f"{key} total: {a}", end = "\t")
- ans = []
- for elem in b.items():
- k, v = elem
- ans.append((k, v, v/a))
- ans.sort(key = lambda x: x[2], reverse = True)
- [print(f"{k} {v} {q: .4f}", end = "\t") for k, v, q in ans]
- print()
复制代码- block10_scaffold_1 total: 21 alignment2 12 0.5714 alignment665 8 0.3810 alignment315 1 0.0476
- block12_scaffold_1 total: 26 alignment2 14 0.5385 alignment664 12 0.4615
复制代码 |
|