python - Pandas Dataframe中的焊盘选择范围?
问题描述
如果我用类似的东西切片数据框
>>> df = pd.DataFrame(data=[[x] for x in [1,2,3,5,1,3,2,1,1,4,5,6]], columns=['A'])
>>> df.loc[df['A'] == 1]
# or
>>> df[df['A'] == 1]
A
0 1
4 1
7 1
8 1
我怎样才能用 1 的缓冲区填充我的选择并获取每个索引0, 1, 3, 4, 5, 6, 7, 8, 9
?我想选择列中'A'
值为 1 的所有行,以及任何此类行之前或之后的行。
编辑我希望找到一种适用于任意焊盘尺寸的解决方案,而不仅仅是适用于 1 的焊盘尺寸。
编辑 2这是另一个示例,说明我要做什么
df = pd.DataFrame(data=[[x] for x in [1,2,3,5,3,2,1,1,4,5,6,0,0,3,1,2,4,5]], columns=['A'])
我们正在寻找pad == 2
. 在这种情况下,我会尝试获取 rows 0, 1, 2, 4, 5, 6, 7, 8, 9, 12, 13, 14, 15, 16
。
解决方案
您可以按位使用 shift 或|
c = df['A'] == 1
df[c|c.shift()|c.shift(-1)]
A
0 1
1 2
3 5
4 1
5 3
6 2
7 1
8 1
9 4
推荐阅读
- python - 椭圆区域的网格/点阵/矩阵
- android - Weird issue with local notification on Oreo
- scala - 如何使用精炼库根据彼此类型的类定义 A 和 B?
- javascript - jQuery添加类在某些移动设备上不起作用
- c++ - 如何在不调用复制构造函数的情况下将返回值隐式转换为基类?
- python - 神经网络为每一行预测相同的概率
- ios - 从 UIFont 或 CGFont 获取元信息 - iOS、Swift
- php - 如何在 cPanel 根文件夹中放置自定义 PHP 文件
- symfony - webpack symfony encore jquery 第三方插件
- java - Maven:如何设置依赖项的类路径?