我有一个细菌菌株收集的遗传数据数据集,我想绘制一张热图,显示我的菌株的许多等位基因的流行程度(按分组变量分组)。
我的原始数据是一个大型数据框,由许多菌株(行),分组变量(1列)和多个遗传决定因素组成,每个都是一个自己的变量。我正在努力用ggplot创建一个热图,因为这需要一个需要绘制的数据矩阵,我不知道如何将原始数据转换为所需的矩阵。 我的原始数据框看起来像这样(摘录,为简单起见):
override func didTransition(to state: UITableViewCellStateMask) {
super.willTransition(to: state)
if state == .showingDeleteConfirmationMask {
for subview: UIView in subviews {
if NSStringFromClass(type(of: subview)) == "UITableViewCellDeleteConfirmationView" {
let deleteBtn = UIImageView(frame: CGRect(x: 0, y: 0, width: 84, height: 43))
deleteBtn.backgroundColor = .red
deleteBtn.contentMode = .scaleAspectFit
deleteBtn.image = UIImage(named: "delete.png")
subview.subviews[0].addSubview(deleteBtn)
}
}
}
}
A-F是等位基因变量,'0'表示它不存在,而'1'表示它是。我现在想要做的是计算每组的出现次数'1',得到与该组的所有观察相关的百分比(即'1'/('1'+'0')对于组10,38 ,69,73,95,127)。然后这需要在这样的矩阵中:
Sample group A B C D E F
1 1 10 0 1 0 0 0 0
2 2 10 0 1 0 0 0 0
3 3 10 0 1 0 0 0 0
4 4 10 0 1 0 0 0 0
5 5 38 0 1 0 0 0 0
6 6 38 0 1 0 0 0 0
7 7 38 1 1 0 0 0 0
8 8 69 0 1 0 0 0 0
9 9 69 0 1 0 0 0 0
10 10 69 0 1 0 0 0 0
11 11 69 0 1 0 0 0 0
12 12 69 0 1 0 0 0 0
13 13 69 0 1 0 0 0 0
14 14 73 0 0 0 0 0 0
15 15 73 0 0 0 0 0 0
16 16 73 0 0 0 0 0 0
17 17 73 0 0 0 0 0 0
18 18 73 0 0 0 0 0 0
19 19 73 0 0 0 0 0 0
20 20 73 0 0 0 0 0 0
21 21 73 0 0 0 0 0 0
22 22 73 0 0 0 0 0 0
23 23 73 0 0 0 0 0 0
24 24 73 0 0 0 0 0 0
25 25 73 1 0 0 0 0 0
26 26 73 0 0 0 0 0 0
27 27 95 0 0 0 0 0 0
28 28 95 0 0 0 0 0 0
29 29 95 0 0 0 0 0 0
30 30 95 0 0 0 0 0 0
31 31 95 0 0 0 0 0 0
32 32 127 0 0 0 0 0 0
33 33 127 0 0 0 0 0 0
34 34 127 0 0 0 0 0 0
35 35 127 0 0 0 0 0 0
我的数据集非常庞大,因此手动计算并在此示例中“键入”矩阵不是一个可行的选项。 在R中是否有任何智能方法可以将其绘制成热图?
非常感谢任何帮助。 谢谢
kruemelprinz