【发布时间】:2018-07-04 20:55:23
【问题描述】:
我有一个数据框
import pandas as pd
import numpy as np
v1=list(np.random.rand(30))
v2=list(np.random.rand(30))
mydf=pd.DataFrame(data=zip(v1,v2),columns=['var1','var2'])
然后我对一些变量应用一些布尔条件
mydf['cond1']=mydf['var1']>0.2
mydf['cond2']=mydf['var1']>0.8
mydf['cond1']=
0 False
1 True
2 True
3 False
4 False
5 True
6 False
....
我想在“cond1”(或“cond2”)为 True 的块中分组,并为每个组存储:
组的值:真/假
块的开始和结束的索引:例如 1,2 5,5
var2的 2 个值在起点和终点的索引处,所有
var1的值在开始索引和结束索引之间,作为一个可迭代的(np.array 列表)
这是返回值的一个示例:
summary=
'Start' 'End' 'Start_var2' 'End_var2' 'Value' 'var1'
1 2 0.3217381 0.454543 True [0.25,0.26]
【问题讨论】: