je voudrais tracer « MJD » par rapport à « MJD_DUPLICATE » avec le (13Mo) jeu de données DR14Q_pruned_repeats.csv » trouvé ici :: https://www.dropbox.com/s/1dyong27bre3p9j/DR14Q_pruned_repeats.csv?dl=0conversion de chaînes de Flotteurs en Pandas série
Voici mon code:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from astropy.table import Table
from astropy.io import ascii
from astropy.io import fits
filename = 'DR14Q_pruned_repeats.csv'
df = pd.read_csv(filename)
multiples = df[df["N_SPEC"] >2]
multiples.plot.scatter(x='MJD', y='N_SPEC')
plt.show()
multiples.plot.scatter(x='MJD', y='MJD_DUPLICATE')
plt.show()
le MJD vs MJD_DUPLICATE ligne de traçage renvoie une erreur ::
ValueError: scatter requires y column to be numeric
et retourne la ligne pd.to_numeric seulement NaNs.
Cela fonctionne, mais ne fait pas ce que je suis après. J'ai besoin de garder toutes les données numériques dans le MJD_DUPLICATES, pas seulement une deuxième colonne. – npross
Oui, puis créez une nouvelle colonne avec le nouveau nom 'multiples ['MJD_DUPLICATE_NEW'] = pd.to_numeric (ser, errors = 'coerce')' et tracez-le 'multiples.plot.scatter (x = 'MJD', y = ' MJD_DUPLICATE_NEW ') ' – jezrael
Vous ne pouvez pas tracer les tuples, vous avez besoin de scalaires. – jezrael