【发布时间】:2020-07-23 11:22:13
【问题描述】:
我有一个带有数值的数据框(我在这里只显示用于“条件”的列)。 我想将其拆分为其他几个(拆分后的数据框的大小可能不同)。 “拆分”应基于连续的非零值。
在以下情况下,来自此初始数据帧:
:
我想把这三个数据框变成新的变量
,,
是否有任何功能可以在不解析所有初始数据帧的情况下实现这一目标? 谢谢
【问题讨论】:
标签: python-3.x pandas dataframe split
我有一个带有数值的数据框(我在这里只显示用于“条件”的列)。 我想将其拆分为其他几个(拆分后的数据框的大小可能不同)。 “拆分”应基于连续的非零值。
在以下情况下,来自此初始数据帧:
:
我想把这三个数据框变成新的变量
,,
是否有任何功能可以在不解析所有初始数据帧的情况下实现这一目标? 谢谢
【问题讨论】:
标签: python-3.x pandas dataframe split
我想我找到了解决方案...
df['index']=df.index.values #Create columns with index
s = df.iloc[:,3].eq(0) #mask of zero value
new_df = df.groupby([s, s.cumsum()]).apply(lambda x: list(x.index)) #find on stackoverflow to group value based on the previous mask
out=new_df.loc[False] #Select only False Value therefore only value >0
最后我有一个具有连续非零值索引组的数据框
【讨论】: