gpt4 book ai didi

python - 使用 pandas 使用 bool 方法选择列数据集

转载 作者:行者123 更新时间:2023-11-30 22:30:42 27 4
gpt4 key购买 nike

我有一个数据框,其中有两列代表坐标,还有一个 bool 格式的附加列:

X    Y    PROB
2 4 False
3 5 False
3 2 False
4 4 True
3 7 True
2 4 False
2 3 False

我想做的是选择连续的 False 和 True 坐标并生成 2 个新数据帧,如下所示:

如果为 False

X   Y  PROB
2 4 1
3 5 1
3 2 1
2 4 2
2 3 2

在 True 的情况下

X   Y  PROB
4 4 1
3 7 1

现在我的方法是使用 .isin 但我得到 KeyError,有什么想法吗?

最佳答案

或者您可以尝试此操作(PS:使用 .drop('Group',1) 删除列 Group)

df['Group']=df.PROB.astype(int).diff().fillna(0).ne(0).cumsum()
df_True=df[df.PROB]
df_False=df[~df.PROB]
df_False.assign(PROB=pd.factorize(df_False.Group)[0]+1)
Out[111]:
X Y PROB Group
0 2 4 1 0
1 3 5 1 0
2 3 2 1 0
5 2 4 2 2
6 2 3 2 2

df_True.assign(PROB=pd.factorize(df_True.Group)[0]+1)
Out[112]:
X Y PROB Group
3 4 4 1 1
4 3 7 1 1

关于python - 使用 pandas 使用 bool 方法选择列数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45970464/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com