Hallo ich chemischen Fingerabdruckwählt n für chemische Fingerabdruck Cluster
Ich verwende RDKit, die bieten ein hierarchisches Verfahren für Cluster, das Problem ist, dass ich weiß, die Anzahl der Cluster zu Cluster versuche ich 13 Cluster haben will so ich verwende kmean Methode basiert auf Tanimoto Ähnlichkeitsbewertung mit scikit
hier ist mein Code:
smiles = []
molFin = []
fps = []
np_fps = []
#mol["idx"] contain the name of the molecules
for x in mol["idx"]:
res = cs.search(x)
#get the smiles code of a molecule
smi = res[0].smiles
#get the fingerprint of the molecule
fp = Chem.MolFromSmiles(str(smi))
fp = FingerprintMols.FingerprintMol(fp)
fps.append(fp)
#compute the similarity score (end up with a cross molecule matrix where each occurence correspond to the taminoto score)
dists = []
nfps = len(fps)
for i in range(0,nfps):
sims = DataStructs.BulkTanimotoSimilarity(fps[i],fps)
dists.append(sims)
#store the value on a data frame and apply kmean
mol_dist = pd.DataFrame(dists)
k_means = cluster.KMeans(n_clusters=13)
k1 = k_means.fit_predict(mol_dist)
mol["cluster"] = k1
#get the result
final = mol[["idx","cluster"]]
Das Clustering scheint in einer Art und Weise zu arbeiten, aber ich habe keine Ahnung, wie wir eine der Clustering für chemische Fingerabdruck tun , sollen wir die c anwenden Glanzalgorithmus direkt auf dem Fingerabdruck selbst statt?
Ich habe eine Grundwahrheit und ich möchte nur die Clusterbildung der chemischen Struktur mit diesem GT vergleichen, damit ich die Anzahl der Cluster kenne, die ich brauche, um den Vergleich zu machen, ich will nur wissen, ob es eine gute Praxis ist Es ist so für die chemische Struktur –