Python | Marco de datos de pandas.resample()

Python es un excelente lenguaje para realizar análisis de datos, principalmente debido al fantástico ecosistema de paquetes de Python centrados en datos. Pandas es uno de esos paquetes y facilita mucho la importación y el análisis de datos.

La función Pandas dataframe.resample()se utiliza principalmente para datos de series temporales.
Una serie de tiempo es una serie de puntos de datos indexados (o listados o graficados) en orden de tiempo. Más comúnmente, una serie de tiempo es una secuencia tomada en puntos sucesivos igualmente espaciados en el tiempo. Es un método de conveniencia para conversión de frecuencia y remuestreo de series de tiempo. El objeto debe tener un índice similar a la fecha y hora (DatetimeIndex, PeriodIndex o TimedeltaIndex) o pasar valores similares a la fecha y hora a la palabra clave on o level.

Sintaxis: DataFrame.resample(regla, cómo=Ninguno, eje=0, fill_method=Ninguno, cerrado=Ninguno, etiqueta=Ninguno, convención=’inicio’, tipo=Ninguno, loffset=Ninguno, límite=Ninguno, base=0, on=Ninguno, nivel=Ninguno)

Parámetros:
regla: la string de desplazamiento u objeto que representa el
eje de conversión de destino: int, opcional, predeterminado 0
cerrado: {‘derecha’, ‘izquierda’}
etiqueta: {‘derecha’, ‘izquierda’}
convención: solo para PeriodIndex, controla si para usar el inicio o el final de la regla
loffset: ajuste la base de las etiquetas de tiempo remuestreado
: para frecuencias que subdividen uniformemente 1 día, el «origen» de los intervalos agregados. Por ejemplo, para una frecuencia de ‘5 min’, la base puede variar de 0 a 4. El valor predeterminado es 0.
on: para un DataFrame, columna que se utilizará en lugar de índice para el remuestreo. La columna debe ser similar a una fecha y hora.
nivel :Para un índice múltiple, nivel (nombre o número) que se usará para el remuestreo. El nivel debe ser similar a una fecha y hora.

El remuestreo genera una distribución de muestreo única sobre la base de los datos reales. Podemos aplicar varias frecuencias para volver a muestrear nuestros datos de series temporales. Esta es una técnica muy importante en el campo de la analítica.
Las frecuencias de series de tiempo más comúnmente utilizadas son –
W : frecuencia semanal
M : frecuencia de fin de mes
SM : frecuencia de fin de mes (15 y fin de mes)
Q : frecuencia de fin de trimestre

Hay muchos otros tipos de frecuencias de series temporales disponibles. Veamos cómo aplicar esta frecuencia de serie temporal en los datos y volver a muestrearlo.

Para obtener un enlace al archivo CSV utilizado en el código, haga clic aquí

Estos son datos de precios de acciones de Apple por una duración de 1 año desde (13-11-17) hasta (13-11-18)

Ejemplo #1: Remuestreo de los datos en frecuencia mensual

# importing pandas as pd
import pandas as pd
  
# By default the "date" column was in string format,
# we need to convert it into date-time format
  
# parse_dates =["date"], converts the "date" 
# column to date-time format. We know that 
# resampling works with time-series data only
# so convert "date" column to index
  
# index_col ="date", makes "date" column, the index of the data frame
df = pd.read_csv("apple.csv", parse_dates =["date"], index_col ="date")
  
# Printing the first 10 rows of dataframe
df[:10]

# Resampling the time series data based on months
# we apply it on stock close price
# 'M' indicates month
monthly_resampled_data = df.close.resample('M').mean()
  
# the above command will find the mean closing price
# of each month for a duration of 12 months.
monthly_resampled_data

Salida:

 
Ejemplo n.º 2: remuestreo de los datos en frecuencia semanal

# importing pandas as pd
import pandas as pd
  
# We know that resampling works with time-series data
# only so convert "date" column to index
# index_col ="date", makes "date" column.
  
df = pd.read_csv("apple.csv", parse_dates =["date"], index_col ="date")
  
# Resampling the time series data based on weekly frequency
# we apply it on stock open price 'W' indicates week
weekly_resampled_data = df.open.resample('W').mean()
  
# find the mean opening price of each week 
# for each week over a period of 1 year.
weekly_resampled_data

Salida:

 
Ejemplo n.º 3: remuestreo de los datos en frecuencia trimestral

# importing pandas as pd
import pandas as pd
  
# We know that resampling works with time-series
#  data only so convert our "date" column to index
# index_col ="date", makes "date" column
df = pd.read_csv("apple.csv", parse_dates =["date"], index_col ="date")
  
# Resampling the time series data
#  based on Quarterly frequency
# 'Q' indicates quarter
  
Quarterly_resampled_data = df.open.resample('Q').mean()
  
# mean opening price of each quarter
# over a period of 1 year.
Quarterly_resampled_data

Producción :

Publicación traducida automáticamente

Artículo escrito por Shubham__Ranjan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *