para - renombrar columnas en python
¿Cómo trazar dos columnas de un marco de datos de pandas usando puntos? (2)
Para esto (y para la mayoría de los diagramas) no confiaría en las envolturas de Pandas para matplotlib. En su lugar, simplemente use matplotlib directamente:
import matplotlib.pyplot as plt
plt.scatter(df[''col_name_1''], df[''col_name_2''])
plt.show() # Depending on whether you use IPython or interactive mode, etc.
y recuerde que puede acceder a una matriz NumPy de los valores de la columna con df.col_name_1.values
por ejemplo.
Me encontré con problemas para usar esto con el trazado predeterminado de Pandas en el caso de una columna de valores Timestamp con una precisión de milisegundos. Al tratar de convertir los objetos al tipo datetime64
, también descubrí un desagradable problema: < Pandas da un resultado incorrecto al preguntar si los valores de la columna Timestamp tienen attr astype >.
Tengo un marco de datos de pandas y me gustaría trazar los valores de una columna en comparación con los valores de otra columna. Afortunadamente, hay un método de plot
asociado con los marcos de datos que parece hacer lo que necesito:
df.plot(x=''col_name_1'', y=''col_name_2'')
Desafortunadamente, parece que entre los estilos de trazado (enumerados here después del parámetro kind
) no hay puntos. Puedo usar líneas o barras o incluso densidad pero no puntos. Existe un trabajo que puede ayudar a resolver este problema.
Puede especificar el style
de la línea trazada al llamar a df.plot
:
df.plot(x=''col_name_1'', y=''col_name_2'', style=''o'')
El argumento de style
también puede ser un dict
o list
, por ejemplo:
import numpy as np
import pandas as pd
d = {''one'' : np.random.rand(10),
''two'' : np.random.rand(10)}
df = pd.DataFrame(d)
df.plot(style=[''o'',''rx''])
Todos los formatos de estilo aceptados se enumeran en la documentación de matplotlib.pyplot.plot
.