Producción de Pandas DataFrame, visualización de datos DF

Este documento presenta cómo comenzar con Pandas. Pandas es una biblioteca de análisis de datos para Python, que puede manipular datos fácilmente y realizar análisis de datos.

Esta sección importa Pandas y NumPy de la siguiente manera:

In [1]: import numpy as np

In [2]: import pandas as pd

# generar objeto

Al generar  una Serieabrir en ventana nueva con una lista de valores  , Pandas genera automáticamente índices enteros por defecto:

In [3]: s = pd.Series([1, 3, 5, np.nan, 6, 8])

In [4]: s
Out[4]:
0    1.0
1    3.0
2    5.0
3    NaN
4    6.0
5    8.0
dtype: float64

Genere un DataFrameabrir en una ventana nueva a partir de una matriz NumPy con índices y etiquetas de fecha y hora  :

In [5]: dates = pd.date_range('20130101', periods=6)

In [6]: dates
Out[6]:
DatetimeIndex(['2013-01-01', '2013-01-02', '2013-01-03', '2013-01-04',
               '2013-01-05', '2013-01-06'],
              dtype='datetime64[ns]', freq='D')

In [7]: df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list('ABCD'))

In [8]: df
Out[8]:
                   A         B         C         D
2013-01-01  0.469112 -0.282863 -1.509059 -1.135632
2013-01-02  1.212112 -0.173215  0.119209 -1.044236
2013-01-03 -0.861849 -2.104569 -0.494929  1.071804
2013-01-04  0.721555 -0.706771 -1.039575  0.271860
2013-01-05 -0.424972  0.567020  0.276232 -1.087401
2013-01-06 -0.673690  0.113648 -1.478427  0.524988

Genere un marco de datos con un objeto de diccionario de serie:

In [9]: df2 = pd.DataFrame({'A': 1.,
   ...:                     'B': pd.Timestamp('20130102'),
   ...:                     'C': pd.Series(1, index=list(range(4)), dtype='float32'),
   ...:                     'D': np.array([3] * 4, dtype='int32'),
   ...:                     'E': pd.Categorical(["test", "train", "test", "train"]),
   ...:                     'F': 'foo'})
   ...:

In [10]: df2
Out[10]:
     A          B    C  D      E    F
0  1.0 2013-01-02  1.0  3   test  foo
1  1.0 2013-01-02  1.0  3  train  foo
2  1.0 2013-01-02  1.0  3   test  foo
3  1.0 2013-01-02  1.0  3  train  foo

Las columnas del DataFrame tienen diferentes ** tipos de datos abrir en nueva ventana **.

In [11]: df2.dtypes
Out[11]:
A           float64
B    datetime64[ns]
C           float32
D             int32
E          category
F            object
dtype: object

IPython admite el autocompletado de teclas de tabulación de nombres de columna y atributos públicos. Los siguientes son algunos de los atributos que se pueden completar automáticamente:

In [12]: df2.<TAB>  # noqa: E225, E999
df2.A                  df2.bool
df2.abs                df2.boxplot
df2.add                df2.C
df2.add_prefix         df2.clip
df2.add_suffix         df2.clip_lower
df2.align              df2.clip_upper
df2.all                df2.columns
df2.any                df2.combine
df2.append             df2.combine_first
df2.apply              df2.compound
df2.applymap           df2.consolidate
df2.D

Las columnas A, B, C, D y E se autocompletan; por motivos de brevedad, aquí solo se muestran algunas de las propiedades.

# ver datos

El siguiente código muestra cómo ver los datos de cabeza y cola de DataFrame:

In [13]: df.head()
Out[13]:
                   A         B         C         D
2013-01-01  0.469112 -0.282863 -1.509059 -1.135632
2013-01-02  1.212112 -0.173215  0.119209 -1.044236
2013-01-03 -0.861849 -2.104569 -0.494929  1.071804
2013-01-04  0.721555 -0.706771 -1.039575  0.271860
2013-01-05 -0.424972  0.567020  0.276232 -1.087401

In [14]: df.tail(3)
Out[14]:
                   A         B         C         D
2013-01-04  0.721555 -0.706771 -1.039575  0.271860
2013-01-05 -0.424972  0.567020  0.276232 -1.087401
2013-01-06 -0.673690  0.113648 -1.478427  0.524988

Mostrar nombres de índices y columnas:

In [15]: df.index
Out[15]:
DatetimeIndex(['2013-01-01', '2013-01-02', '2013-01-03', '2013-01-04',
               '2013-01-05', '2013-01-06'],
              dtype='datetime64[ns]', freq='D')

In [16]: df.columns
Out[16]: Index(['A', 'B', 'C', 'D'], dtype='object')

DataFrame.to_numpy()open in new window  genera un objeto NumPy de los datos subyacentes. Tenga en cuenta que cuando las columnas de DataFrameopen in new window  consisten en varios tipos de datos, esta operación consume una gran cantidad de recursos del sistema, que también es la diferencia esencial entre Pandas y NumPy: las matrices NumPy tienen solo un tipo de datos y los tipos de datos de cada columna de DataFrame son diferentes . Al llamar  a DataFrame.to_numpy() open in new window  , Pandas busca tipos de datos NumPy que admitan todos los tipos de datos en DataFrame. Como otro tipo de datos object, los valores en una columna de DataFrame se pueden convertir en objetos de Python.

 Resumir

Con el DataFrame de Pandas, puede hacer lo siguiente: Cargar y procesar datos, incluidos datos en CSV, Excel, base de datos SQL, etc. varios formatos Cargue datos en bases de datos o aplicaciones en línea, genere datos en otros formatos, como tablas HTML.

Supongo que te gusta

Origin blog.csdn.net/alike_u/article/details/129726717
Recomendado
Clasificación