Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.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 根据表中另一列的值范围聚合列的内容_Python_Python 3.x_Pandas_Aggregate_Pandas Groupby - Fatal编程技术网

Python 根据表中另一列的值范围聚合列的内容

Python 根据表中另一列的值范围聚合列的内容,python,python-3.x,pandas,aggregate,pandas-groupby,Python,Python 3.x,Pandas,Aggregate,Pandas Groupby,我正在根据给定列中的值范围聚合数据帧的内容。我的df如下所示: min max names 1 5 ['a','b'] 0 5 ['d'] 6 8 ['a','c'] 3 4 ['e','a'] 预期产量为 对于min=0和max=5,获取聚合值,因此名称值将是['a'、'b'、'd'、'e'、'a'] 对于min=5和max=10,获取聚合值,名称值将为['a','d'] 非常感谢您的帮助。最直观的方法是过滤然后聚合。为了解决您的具体问题,我会这样做: &

我正在根据给定列中的值范围聚合数据帧的内容。我的
df
如下所示:

min max names
1   5   ['a','b']
0   5   ['d']
6   8   ['a','c']
3   4   ['e','a']
预期产量为

  • 对于
    min=0
    max=5
    ,获取聚合值,因此名称值将是
    ['a'、'b'、'd'、'e'、'a']
  • 对于
    min=5
    max=10
    ,获取聚合值,名称值将为
    ['a','d']

非常感谢您的帮助。

最直观的方法是过滤然后聚合。为了解决您的具体问题,我会这样做:

>> df = pd.DataFrame({"min": [1, 0, 6, 3],
   "max": [5, 5, 8, 4],
   "value": [['a','b'], ['d'], ['a','c'], ['e','a']]})

>> print(df)
   min  max   value
0    1    5  [a, b]
1    0    5     [d]
2    6    8  [a, c]
3    3    4  [e, a]

>> sum_filtered_values = df[(df["max"]<=5) & (df["min"]>=0)].value.sum()
>> print(sum_filtered_values)
['a', 'b', 'd', 'e', 'a']

>> sum_filtered_values = df[(df["max"]<=10) & (df["min"]>=5)].value.sum()
>> print(sum_filtered_values)
['a', 'c']
df=pd.DataFrame({“min”:[1,0,6,3], “最大值”:[5,5,8,4], “值”:['a'、'b']、['d']、['a'、'c']、['e'、'a']}) >>打印(df) 最小最大值 01 5[a,b] 105[丁] 2 6 8[a,c] 3.4[e,a] >>sum_filtered_values=df[(df[“max”]=0)]。value.sum() >>打印(总和过滤值) ['a','b','d','e','a'] >>sum_filtered_values=df[(df[“max”]=5)]。value.sum() >>打印(总和过滤值) ['a','c']
是否应将其转换为列?你能发布预期输出吗预期输出是列表。