如何将数据框与列上的特定值一分为二

时间:2019-02-08 02:05:38

标签: python pandas dataframe split

我有这个数据框:

enter image description here

在第84行中,它从“位置”列中的负值变为正值。

我需要在此时(位置= 0之前和之后)将数据帧一分为二

我尝试使用

idx = run_1[run_1['Position_(m)']>0].index dfs = np.split(df, idx)

但是它在> 0的每个实例上分割,如果我使用idx [0],它会说:

ValueError:数组拆分不会导致等分

注意:我只需要一个分割,“之前和之后”,我已经浏览了其他类似的问题,但是大多数都处理了多个分割,并且我无法重用针对单个分割所引用的代码。 / p>

1 个答案:

答案 0 :(得分:1)

您可以使用布尔掩码来做到这一点:

before = run_9[run_9['Position_(m)']<0]
after = run_9[run_9['Position_(m)']>0]