Erreur de code python
Résolu
lynajar
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir;
je veux calculer le nombre de cluster sur une matrice de similarité,
j'ai utilisé ce code, mais j'ai une erreur d'execution à la ligne 74,
erreur:
TypeError: '(slice(None, None, None), 0)' is an invalid key
merci d'avance pour toute aide.
je veux calculer le nombre de cluster sur une matrice de similarité,
j'ai utilisé ce code, mais j'ai une erreur d'execution à la ligne 74,
erreur:
TypeError: '(slice(None, None, None), 0)' is an invalid key
# -*- coding: utf-8 -*- """ =================================== Demo of DBSCAN clustering algorithm =================================== Finds core samples of high density and expands clusters from them. """ print(__doc__) import numpy as np import pandas as pd from sklearn.cluster import DBSCAN from sklearn import metrics #from sklearn.datasets import make_blobs from sklearn.preprocessing import StandardScaler X=pd.read_csv("C:/Users/click/Desktop/doctorat/rfiddd/fichier trouvé resultats/2020-07-22/lev_173.csv", sep=";") # ############################################################################# # Generate sample data #centers = [[1, 1], [-1, -1], [1, -1]] #X, labels_true = make_blobs(n_samples=750, centers=centers, cluster_std=0.4, # random_state=0) #X = StandardScaler().fit_transform(X) # ############################################################################# # Compute DBSCAN db = DBSCAN(eps=15, min_samples=2).fit(X) core_samples_mask = np.zeros_like(db.labels_, dtype=bool) core_samples_mask[db.core_sample_indices_] = True labels = db.labels_ # Number of clusters in labels, ignoring noise if present. n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0) print(labels) n_noise_ = list(labels).count(-1) print('Estimated number of clusters: %d' % n_clusters_) print('Estimated number of noise points: %d' % n_noise_) #print("Homogeneity: %0.3f" % metrics.homogeneity_score(labels_true, labels)) #print("Completeness: %0.3f" % metrics.completeness_score(labels_true, labels)) #print("V-measure: %0.3f" % metrics.v_measure_score(labels_true, labels)) #print("Adjusted Rand Index: %0.3f" # % metrics.adjusted_rand_score(labels_true, labels)) #print("Adjusted Mutual Information: %0.3f" # % metrics.adjusted_mutual_info_score(labels_true, labels)) #print("Silhouette Coefficient: %0.3f" # % metrics.silhouette_score(X, labels)) # ############################################################################# # Plot result import matplotlib.pyplot as plt # Black removed and is used for noise instead. unique_labels = set(labels) #colors = [plt.cm.Spectral(each) # for each in np.linspace(0, 1, len(unique_labels))] colors=['y','b','g','r'] print (colors) for k, col in zip(unique_labels, colors): if k == -1: # Black used for noise. # col = [0, 0, 0, 1] col='k' class_member_mask = (labels == k) xy = X[class_member_mask & core_samples_mask] plt.plot(xy[:, 0], xy[:, 1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6) xy = X[class_member_mask & core_samples_mask] plt.plot(xy[:, 0], xy[:, 1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6) plt.title('Estimated number of clusters: %d' % n_clusters_) plt.show()
merci d'avance pour toute aide.
A voir également:
- Iramuteq erreur r none 1 none none
- Si ne qua none - Télécharger - Calcul & Conversion
- L et r signification ✓ - Forum Audio
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur 0x80070643 - Accueil - Windows
- Erreur t32 ✓ - Forum Livebox
8 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
as-tu comparé le contenu de X par rapport au contenu du programme non modifié?
as-tu comparé le contenu de X par rapport au contenu du programme non modifié?
Bonjour;
marci yg_be pour ton aide,
le contenu de X est:
[[ 0.49426097 1.45106697]
[-1.42808099 -0.83706377]
[ 0.33855918 1.03875871]
...
[-0.05713876 -0.90926105]
[-1.16939407 0.03959692]
[ 0.26322951 -0.92649949]]
et le contenu de ma base est une matrice de similarité symétrique de taille (173*173)
voici un exemple:
1 0.30 0.28 0.25 0.36
0.30 1 0.39 0.34 0.23
0.28 0.39 1 0.39 0.28
0.25 0.34 0.39 1 0.33
0.36 0.23 0.28 0.33 1
comment procéder pour appliquer mes données sur cet exemple de code,
merci
marci yg_be pour ton aide,
le contenu de X est:
[[ 0.49426097 1.45106697]
[-1.42808099 -0.83706377]
[ 0.33855918 1.03875871]
...
[-0.05713876 -0.90926105]
[-1.16939407 0.03959692]
[ 0.26322951 -0.92649949]]
et le contenu de ma base est une matrice de similarité symétrique de taille (173*173)
voici un exemple:
1 0.30 0.28 0.25 0.36
0.30 1 0.39 0.34 0.23
0.28 0.39 1 0.39 0.28
0.25 0.34 0.39 1 0.33
0.36 0.23 0.28 0.33 1
comment procéder pour appliquer mes données sur cet exemple de code,
merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
oui c'est vrai dans le code que j'ai partagé la ligne 28 est commenté,
comme le programme ne voulais pas s'executer, alors j'ai mis cette ligne en commentaire, pour voire si l'erreur vien de cette ligne
comme le programme ne voulais pas s'executer, alors j'ai mis cette ligne en commentaire, pour voire si l'erreur vien de cette ligne
an recherchant sur internet, j'ai fait cette modification concernant l'importation du fichier csv,
la première erreur ne s'affiche plus, mais maintenant j'ai une autre erreur à la ligne 32:
ValueError: could not convert string to float: '0.307692307692308;1;0.392857142857143;
voici le code avec modification à partir de la ligne 21 jusqu'a la ligne 23
la première erreur ne s'affiche plus, mais maintenant j'ai une autre erreur à la ligne 32:
ValueError: could not convert string to float: '0.307692307692308;1;0.392857142857143;
voici le code avec modification à partir de la ligne 21 jusqu'a la ligne 23
import numpy as np import pandas as pd from sklearn.cluster import DBSCAN from sklearn import metrics from sklearn.datasets import make_blobs from sklearn.preprocessing import StandardScaler from pandas import read_csv #rcParams['figure.figsize'] = 70, 40 csv_url = 'C:/Users/click/Desktop/doctorat/rfiddd/fichier trouvé resultats/2020-07-22/bisim_173.csv' df = pd.read_csv(csv_url) df.iloc[:, 0:172].values #X=pd.read_csv("C:/Users/click/Desktop/doctorat/rfiddd/fichier trouvé resultats/2020-07-22/bisim_173.csv", sep=";") # ############################################################################# # Generate sample data #centers = [[1, 1], [-1, -1], [1, -1]] #X, labels_true = make_blobs(n_samples=750, centers=centers, cluster_std=0.4, # random_state=0) df = StandardScaler().fit_transform(df) # ############################################################################# # Compute DBSCAN db = DBSCAN(eps=50, min_samples=3).fit(df) core_samples_mask = np.zeros_like(db.labels_, dtype=bool) core_samples_mask[db.core_sample_indices_] = True labels = db.labels_ # Number of clusters in labels, ignoring noise if present. n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0) print(labels) n_noise_ = list(labels).count(-1) print('Estimated number of clusters: %d' % n_clusters_) print('Estimated number of noise points: %d' % n_noise_) #print("Homogeneity: %0.3f" % metrics.homogeneity_score(labels_true, labels)) #print("Completeness: %0.3f" % metrics.completeness_score(labels_true, labels)) #print("V-measure: %0.3f" % metrics.v_measure_score(labels_true, labels)) #print("Adjusted Rand Index: %0.3f" # % metrics.adjusted_rand_score(labels_true, labels)) #print("Adjusted Mutual Information: %0.3f" # % metrics.adjusted_mutual_info_score(labels_true, labels)) #print("Silhouette Coefficient: %0.3f" # % metrics.silhouette_score(X, labels)) # ############################################################################# # Plot result import matplotlib.pyplot as plt # Black removed and is used for noise instead. unique_labels = set(labels) #colors = [plt.cm.Spectral(each) # for each in np.linspace(0, 1, len(unique_labels))] colors=['y','b','g','r'] print (colors) for k, col in zip(unique_labels, colors): if k == -1: # Black used for noise. # col = [0, 0, 0, 1] col='k' class_member_mask = (labels == k) xy = df[class_member_mask & core_samples_mask] plt.plot(xy[:, 0], xy[:, 1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6) xy = df[class_member_mask & core_samples_mask] plt.plot(xy[:, 0], xy[:, 1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6) plt.title('Estimated number of clusters: %d' % n_clusters_) plt.show()
iloc est utilisée pour l'indexation basée sur des emplacements entiers, elle permet de sélectionner les colonnes, en utilisant une notation de découpage.
mon but c'est l'utilisation de la méthode dbscan pour regrouper mon fichier csv en classes,
pour cela j'ai essayer plusieurs solutions mais ça na pas marché,
désolé pour les fautes de programmation, parce que je débute avec le langage python
mon but c'est l'utilisation de la méthode dbscan pour regrouper mon fichier csv en classes,
pour cela j'ai essayer plusieurs solutions mais ça na pas marché,
désolé pour les fautes de programmation, parce que je débute avec le langage python