目录
776、pandas.arrays.IntervalArray.is_empty属性
777、pandas.arrays.IntervalArray.is_non_overlapping_monotonic方法
778、pandas.arrays.IntervalArray.from_arrays方法
779、pandas.arrays.IntervalArray.from_tuples方法
780、pandas.arrays.IntervalArray.from_breaks方法
一、用法精讲
776、pandas.arrays.IntervalArray.is_empty属性
776-1、语法
python
# 776、pandas.arrays.IntervalArray.is_empty属性
pandas.IntervalArray.is_empty
Indicates if an interval is empty, meaning it contains no points.
Returns:
bool or ndarray
A boolean indicating if a scalar Interval is empty, or a boolean ndarray positionally indicating if an Interval in an IntervalArray or IntervalIndex is empty.
776-2、参数
无
776-3、功能
用于检查IntervalArray中的每个区间是否为空,一个区间被认为是空的,如果它的左边界等于右边界,并且是闭合的。
776-4、返回值
返回一个布尔数组,表示每个区间是否为空。
776-5、说明
无
776-6、用法
776-6-1、数据准备
python
无
776-6-2、代码示例
python
# 776、pandas.arrays.IntervalArray.is_empty属性
import pandas as pd
# 创建一个IntervalArray
intervals = pd.arrays.IntervalArray.from_arrays([0, 1, 2], [1, 1, 3], closed='right')
# 检查每个区间是否为空
empty_status = intervals.is_empty
print(empty_status)
776-6-3、结果输出
python
# 776、pandas.arrays.IntervalArray.is_empty属性
# [False True False]
777、pandas.arrays.IntervalArray.is_non_overlapping_monotonic方法
777-1、语法
python
# 777、pandas.arrays.IntervalArray.is_non_overlapping_monotonic方法
pandas.arrays.IntervalArray.is_non_overlapping_monotonic
property IntervalArray.is_non_overlapping_monotonic[source]
Return a boolean whether the IntervalArray is non-overlapping and monotonic.
Non-overlapping means (no Intervals share points), and monotonic means either monotonic increasing or monotonic decreasing.
777-2、参数
无
777-3、功能
用于检查IntervalArray是否为非重叠且单调递增,使用此方法,必须满足以下两个条件:
条件1: 非重叠
确保IntervalArray中的间隔不重叠,即没有两个间隔共享相同的点。
条件2: 单调性
确保IntervalArray中的间隔是单调增加或单调减少的。
777-4、返回值
返回一个布尔值,如果IntervalArray满足上述两个条件(即间隔不重叠且单调增加或单调减少),则返回True;否则,返回False。
777-5、说明
无
777-6、用法
777-6-1、数据准备
python
无
777-6-2、代码示例
python
# 777、pandas.arrays.IntervalArray.is_non_overlapping_monotonic方法
import pandas as pd
# 构造一个IntervalArray
interval_array = pd.arrays.IntervalArray.from_tuples([(0, 1), (1, 2), (2, 3)])
# 检查是否非重叠且单调
is_non_overlapping_monotonic = interval_array.is_non_overlapping_monotonic
print(is_non_overlapping_monotonic)
777-6-3、结果输出
python
# 777、pandas.arrays.IntervalArray.is_non_overlapping_monotonic方法
# True
778、pandas.arrays.IntervalArray.from_arrays方法
778-1、语法
python
# 778、pandas.arrays.IntervalArray.from_arrays方法
classmethod pandas.IntervalArray.from_arrays(left, right, closed='right', copy=False, dtype=None)
Construct from two arrays defining the left and right bounds.
Parameters:
left
array-like (1-dimensional)
Left bounds for each interval.
right
array-like (1-dimensional)
Right bounds for each interval.
closed
{'left', 'right', 'both', 'neither'}, default 'right'
Whether the intervals are closed on the left-side, right-side, both or neither.
copy
bool, default False
Copy the data.
dtype
dtype, optional
If None, dtype will be inferred.
Returns:
IntervalArray
Raises:
ValueError
When a value is missing in only one of left or right. When a value in left is greater than the corresponding value in right.
778-2、参数
778-2-1、left**(必须)****:**array-like,表示区间的左端点,可以是一个列表、数组或其他可迭代对象。
778-2-2、right**(必须)****:**array-like,表示区间的右端点,必须与left的长度相同。
778-2-3、closed**(可选,默认值为'right')****:**字符串,指定区间的闭合方式,可以取值为:
- **'right':**区间右端点闭合(包含右端点)。
- **'left':**区间左端点闭合(包含左端点)。
- **'both':**区间两端都闭合。
- **'neither':**区间两端都开放。
778-2-4、copy**(可选,默认值为False)****:**布尔值,表示是否复制输入数据,如果为True,则会复制数据;如果为False,则可能会返回对原始数据的视图。
778-2-5、dtype**(可选,默认值为None)****:**数据类型,指定返回的区间数组的数据类型,如果未指定,将根据输入数据推断类型。
778-3、功能
用于从给定的左端点和右端点数组创建一个区间数组,它可以处理不同的闭合方式,并允许用户选择是否复制数据。
778-4、返回值
返回一个IntervalArray对象,表示由指定的左端点和右端点构成的区间,该对象可以用于进一步的区间运算和分析。
778-5、说明
无
778-6、用法
778-6-1、数据准备
python
无
778-6-2、代码示例
python
# 778、pandas.arrays.IntervalArray.from_arrays方法
import pandas as pd
left = [3, 6, 10]
right = [5, 8, 11]
interval_array = pd.arrays.IntervalArray.from_arrays(left, right, closed='right')
print(interval_array)
778-6-3、结果输出
python
# 778、pandas.arrays.IntervalArray.from_arrays方法
# <IntervalArray>
# [(3, 5], (6, 8], (10, 11]]
# Length: 3, dtype: interval[int64, right]
779、pandas.arrays.IntervalArray.from_tuples方法
779-1、语法
python
# 779、pandas.arrays.IntervalArray.from_tuples方法
classmethod pandas.IntervalArray.from_tuples(data, closed='right', copy=False, dtype=None)
Construct an IntervalArray from an array-like of tuples.
Parameters:
data
array-like (1-dimensional)
Array of tuples.
closed
{'left', 'right', 'both', 'neither'}, default 'right'
Whether the intervals are closed on the left-side, right-side, both or neither.
copy
bool, default False
By-default copy the data, this is compat only and ignored.
dtype
dtype or None, default None
If None, dtype will be inferred.
Returns:
IntervalArray
779-2、参数
779-2-1、data**(必须)****:**一个包含元组的可迭代对象,每个元组表示一个区间,元组的格式通常是(左边界,右边界)
。
779-2-2、closed**(可选,默认值为'right')****:**字符串,指定区间的闭合方式,可以取值为:
- **'right':**区间右端点闭合(包含右端点)。
- **'left':**区间左端点闭合(包含左端点)。
- **'both':**区间两端都闭合。
- **'neither':**区间两端都开放。
779-2-3、copy**(可选,默认值为False)****:**布尔值,如果为True,则会复制数据;如果为False,则可能会返回对原数据的视图。
779-2-4、dtype**(可选,默认值为None)****:**数据类型,指定返回的区间数组的数据类型,如果为None,则会根据输入数据推断类型。
779-3、功能
从给定的元组列表中创建一个IntervalArray对象,方便进行区间的操作和分析。
779-4、返回值
返回一个pandas.IntervalArray对象,表示由输入的元组定义的区间集合,该对象可以用于进一步的数据分析和处理。
779-5、说明
无
779-6、用法
779-6-1、数据准备
python
无
779-6-2、代码示例
python
# 779、pandas.arrays.IntervalArray.from_tuples方法
import pandas as pd
data = [(1, 2), (3, 5), (6, 8)]
interval_array = pd.arrays.IntervalArray.from_tuples(data, closed='right')
print(interval_array)
779-6-3、结果输出
python
# 779、pandas.arrays.IntervalArray.from_tuples方法
# <IntervalArray>
# [(1, 2], (3, 5], (6, 8]]
# Length: 3, dtype: interval[int64, right]
780、pandas.arrays.IntervalArray.from_breaks方法
780-1、语法
python
# 780、pandas.arrays.IntervalArray.from_breaks方法
classmethod IntervalArray.from_breaks(breaks, closed='right', copy=False, dtype=None)
Construct an IntervalArray from an array of splits.
Parameters:
breaks
array-like (1-dimensional)
Left and right bounds for each interval.
closed
{'left', 'right', 'both', 'neither'}, default 'right'
Whether the intervals are closed on the left-side, right-side, both or neither.
copy
bool, default False
Copy the data.
dtype
dtype or None, default None
If None, dtype will be inferred.
Returns:
IntervalArray
780-2、参数
780-2-1、breaks**(必须)****:**一个可迭代的对象,包含了定义区间的断点,断点的数量应至少为 2。
780-2-2、closed**(可选,默认值为'right')****:**字符串,指定区间的闭合方式,可以取值为:
- **'right':**区间右端点闭合(包含右端点)。
- **'left':**区间左端点闭合(包含左端点)。
- **'both':**区间两端都闭合。
- **'neither':**区间两端都开放。
780-2-3、copy**(可选,默认值为False)****:**布尔值,如果为True,则会复制数据;如果为False,则可能会返回对原数据的视图。
780-2-4、dtype**(可选,默认值为None)****:**数据类型,指定返回的区间数组的数据类型,如果为None,则会根据输入数据推断类型。
780-3、功能
根据提供的一系列断点来生成一个IntervalArray对象,方便对区间进行分析和处理。
780-4、返回值
返回一个pandas.IntervalArray对象,表示由输入的断点所定义的区间集合。
780-5、说明
无
780-6、用法
780-6-1、数据准备
python
无
780-6-2、代码示例
python
# 780、pandas.arrays.IntervalArray.from_breaks方法
import pandas as pd
breaks = [0, 1, 3, 5]
interval_array = pd.arrays.IntervalArray.from_breaks(breaks, closed='right')
print(interval_array)
780-6-3、结果输出
python
# 780、pandas.arrays.IntervalArray.from_breaks方法
# <IntervalArray>
# [(0, 1], (1, 3], (3, 5]]
# Length: 3, dtype: interval[int64, right]