我有一个名为:的资料集synthetic_feature_file ,包含超过 50,000 个特征和 43 个样本。给定sample_indices = syn_data.index.isin([1, 6, 7, 11, 14, 15, 27]),它代表已知样本的索引,我想将它们与其余样本分开,并用与其他样本不同的颜色标记它们。已知样本和其他样本的数据不应重叠。有人可以提供一段程式码来处理这个问题吗?
另外,这是我之前写的程式码。由于它只执行随机处理,所以我想实作其他方法或其他方式来满足上一段所述的要求:
```python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
syn_data = pd.read_csv(synthetic_feature_file)
sample_indices = syn_data.index.isin([1, 6, 7, 11, 14, 15, 27])
x_feature = np.random.choice(syn_data.columns[70:85])
y_feature = np.random.choice(syn_data.columns[30:60])
plt.figure(figsize=(8, 6))
other_samples = syn_data.iloc[~sample_indices]
plt.scatter(other_samples[x_feature], other_samples[y_feature], color='blue', label='Other Samples')
red_samples = syn_data.iloc[sample_indices]
plt.scatter(red_samples[x_feature], red_samples[y_feature], color='red', label='Sample Indices')
plt.xlabel(x_feature)
plt.ylabel(y_feature)
plt.title("Visualization")
plt.legend()
plt.show()
我希望它可以像这样:[link](https://drive.usercontent.google.com/download?id=1C8JK9FhejFjnGiPMABSyja2nOFr5UKEb&export=view&authuser=0)
图片来源:[Google](https://medium.com/ai-academy-taiwan/clustering-%E5%88%86%E7%BE%A4%E6%87%B6%E4%BA%BA%E5%8C%85-9c0bb861a3ba)
但是我的原始程式码每次运行时都会在生成的图像中产生分离不良的红色和蓝色样本簇。以下是每次运行程式码产生的图像:[link](https://drive.usercontent.google.com/download?id=18jhWNWkLCUoYPfM_z-hEASiUlffCSfdv&export=view&authuser=0)
[link](https://drive.usercontent.google.com/download?id=1udZUV_1IArARqIMZRTxDsUV3pNBehDsx&export=view&authuser=0)
因为是随机的,所以在想需要用什么算法能帮助我过滤不要的结果,或是哪位大大有更好的方式