En este artículo, cubriremos cómo verificar si dos intervalos con punto final compartido se superponen o no. Para esto, usamos la clase Interval de pandas y el método superposiciones() para todas las operaciones relacionadas con intervalos.
Sintaxis: Interval.overlaps()
parámetros:
- otro: objeto de intervalo. Compruebe si hay una superposición utilizando este intervalo.
Devuelve: bool . devuelve verdadero si dos intervalos se superponen. de lo contrario devuelve falso.
Implementación paso a paso
Paso 1:
Importe todas las bibliotecas necesarias.
import pandas
Paso 2:
Cree los dos intervalos que comparten puntos finales cerrados
pd.Interval(1,5, closed =both") pd.Interval(5,10, closed="both")
Paso 3:
Compruebe si los intervalos se superponen o no utilizando el método de superposición(). Devuelve un bool.
IsOverlap = Interval1.overlaps(Interval2)
Implementaciones de código
Ejemplo 1: Cree y luego verifique si dos intervalos que comparten extremos cerrados se superponen.
Python3
# importing pandas library import pandas as pd # Creating two closed intervals that # share the endpoint Interval1 = pd.Interval(1, 5, closed='both') Interval2 = pd.Interval(5, 10, closed='both') # printing the intervals print("Interval1 :", Interval1) print("Interval2 :", Interval2) # display the length of both Interval1 # and Interval2 objects print("\nInterval1 object length = ", Interval1.length) print("\nInterval2 object length = ", Interval2.length) # Check whether both the intervals overlap print("do the intervals overlap ? :", Interval1.overlaps(Interval2))
Salida :
Ejemplo 2: Cree y luego verifique si una array de intervalos que comparten puntos finales cerrados se superponen a un intervalo dado [3,16].
Python3
# importing pandas library import pandas as pd Intervals = pd.arrays.IntervalArray.from_tuples( [(1, 6), (6, 10), (10, 15), (20, 25)], closed="both") # Display the IntervalArray print("Intervals_array", Intervals) # check if the given intervals overlap with [3,16] print(Intervals.overlaps(pd.Interval(3, 16, closed='both')))
Producción:
Publicación traducida automáticamente
Artículo escrito por lokeshpotta20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA