Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用Pandas有效地将值存储到重叠的存储箱中?_Python_Pandas_Binning - Fatal编程技术网

Python 如何使用Pandas有效地将值存储到重叠的存储箱中?

Python 如何使用Pandas有效地将值存储到重叠的存储箱中?,python,pandas,binning,Python,Pandas,Binning,我想将float类型列中的所有值放入重叠的容器中。结果列可以是一系列带布尔值的一维向量-原始列中的每个值对应一个向量。结果向量包含值落入的每个箱子的True,以及其他箱子的False 例如,如果我有四个容器[(0,10),(7,20),(15,30),(30,60)],并且原始值是9.5,那么结果向量应该是[真,真,假,假] 我知道如何使用“apply”自定义函数遍历所有范围,但有没有办法更高效、更简洁地执行此装箱操作?简单的列表理解是否满足您的需要 Bins = [(0, 10), (7, 2

我想将float类型列中的所有值放入重叠的容器中。结果列可以是一系列带布尔值的一维向量-原始列中的每个值对应一个向量。结果向量包含值落入的每个箱子的
True
,以及其他箱子的
False

例如,如果我有四个容器
[(0,10),(7,20),(15,30),(30,60)]
,并且原始值是9.5,那么结果向量应该是
[真,真,假,假]


我知道如何使用“apply”自定义函数遍历所有范围,但有没有办法更高效、更简洁地执行此装箱操作?

简单的列表理解是否满足您的需要

Bins = [(0, 10), (7, 20), (15, 30), (30, 60)]
Result = [((9.5>=y[0])&(9.5<=y[1])) for y in Bins]
并将其应用于列:

df[data].apply(lambda x: pd.Series(in_ranges(x,Bins),Bins))
df[data].apply(lambda x: pd.Series(in_ranges(x,Bins),Bins))