The pandas toolkit was primarily designed for financial modeling, it comes with an extensive set of tools for dealing with data ranges and time series.
A pandas Interval refers to a range of values between a particular beginning and end point and having the same type.
An IntervalArray
is a pandas object that represents an array of interval data that is closed on the same side.
The contains
function allows checking element-wise if the intervals included within an IntervalArray
contain a specific value.
This function is associated with the class pandas.arrays.IntervalArray
and has the following syntax:
[Boolean] = [Interval].contains(value)
This function accepts value
as a parameter to search for, and returns an array of [Boolean]
values, indicating if the specified value was detected within the [Interval]
intervals of the IntervalArray
.
Let's go through the following example showcasing how to check if a value is contained in an IntervalArray
object:
import pandas as pddf = pd.DataFrame({'price_low' : [1 , 10, 25],'price_high': [10, 20, 30],'item': ['item1','item2','item3']})price_ivs = pd.arrays.IntervalArray.from_arrays(df['price_low'], df['price_high'], closed='left')print("The interval array is the following:")print(price_ivs)print("Checking whether the value 2 is contained in the IntervalArray:")print(price_ivs.contains(2))print("Checking whether the value 10 is contained in the IntervalArray:")print(price_ivs.contains(10))print("Checking whether the value 22 is contained in the IntervalArray:")print(price_ivs.contains(22))
In the above code snippet:
Line 1: Import the pandas
library.
Lines 3–7: Define a DataFrame containing a list of items. Specify the low and high price for each item.
Lines 9–13: Construct an interval array based on the prices intervals set for each item and store it within a variable named price_ivs
. We set the argument closed
to left
, which means that the left endpoint of each interval in the interval array is inclusive (price_low
value) whereas the right endpoint is exclusive (price_high
value).
Lines 14–15: Display the interval array already constructed.
Lines 17–18: Check whether the value 2
is contained within any interval of the price_ivs
. The boolean array returned shows that this value is included within the first interval.
Lines 20–21: Check whether the value 10
is contained within any interval of the price_ivs
. The boolean array returned shows that this value is included within the second interval because we set the argument closed
to left
as previously elaborated.
Lines 23–24: Check whether the value 22
is contained within the price_ivs
. The boolean array returned shows that this value is not included within the devised intervals.
Free Resources