所以我正在某些数据上运行一些进程(kmeans是其中之一,如果有帮助的话)
在此过程之前,有一些标签绑定到某些点,例如:
df1:
x y z labels
1.0 2.1 3.1 1
1.2 8.6 4.2 1
3.1 4.1 1.1 2
2.2 2.9 4.6 2
8.1 7.7 2.1 3
1.1 1.9 5.7 4
4.4 7.9 6.4 5
现在将这些点分配给这些特定的标签,这很好,但是在我运行第二个过程(例如,另一个k表示)之后,将相同的点分配给了不同的标签:
x y z after_labels
1.0 2.1 3.1 2
1.2 8.6 4.2 2
3.1 4.1 1.1 1
2.2 2.9 4.6 1
8.1 7.7 2.1 3
1.1 1.9 5.7 5
4.4 7.9 6.4 4
因此,我将之前和之后的标签添加到同一表中:
x y z labels after_labels
1.0 2.1 3.1 1 2
1.2 8.6 4.2 1 2
3.1 4.1 1.1 2 1
2.2 2.9 4.6 2 1
8.1 7.7 2.1 3 3
1.1 1.9 5.7 4 5
4.4 7.9 6.4 5 4
如我所见,在处理之前,前2个点的标题为标签1,但即使点相同,现在也标题为标签2。
与点3和4相同。其标记为label(cluster)2,但标记为1
是否有任何方法可以遍历数据框并基于基于“标签”的共同点来重命名after_label?我知道它不会100%准确,因为某些点会在不同的标签中,没关系。
所以基本上:
x y z labels after_labels
1.0 2.1 3.1 1 1
1.2 8.6 4.2 1 1
3.1 4.1 1.1 2 2
2.2 2.9 4.6 2 2
8.1 7.7 2.1 3 3
1.1 1.9 5.7 4 5
4.4 7.9 6.4 5 4
谢谢大家