当前位置: 首页 > 知识库问答 >
问题:

如何使用条件[duplicate]筛选此数据帧

谷梁智
2023-03-14

我想使用条件筛选数据集。我尝试使用.isin()函数,但在筛选np.array浮点列表时得到了一个空数据帧。这是我的密码

f1 = []
f2 = []
f3 = []
f4 = []
for c in range(100):
    x = (2 * c) + 28
    y = ((9 * c)/5) + 32
    z = abs(x-y)
    f1.append(x)
    f2.append(y)
    f3.append(c)
    f4.append(z)
columns=['Temp in Celsius', 'Norm Temp in F', 'Make shift Temp in F', 'Absolute Diff btw formulas']
df = pd.DataFrame([f3,f2,f1,f4]).transpose()
df.columns=columns
print(df[df['Absolute Diff btw formulas'].isin(np.arange(0.1, 0.9, 0.1))])

我在绝对差异btw公式列中搜索的值实际上是存在的,因为当我运行df[15:25]时,我得到了这个

print(df[15:25])
    Temp in Celsius  Norm Temp in F  Make shift Temp in F  Absolute Diff btw formulas
15             15.0            59.0                  58.0                         1.0
16             16.0            60.8                  60.0                         0.8
17             17.0            62.6                  62.0                         0.6
18             18.0            64.4                  64.0                         0.4
19             19.0            66.2                  66.0                         0.2
20             20.0            68.0                  68.0                         0.0
21             21.0            69.8                  70.0                         0.2
22             22.0            71.6                  72.0                         0.4
23             23.0            73.4                  74.0                         0.6
24             24.0            75.2                  76.0                         0.8

那么,我如何使用.isin()函数或任何条件语句来实现它呢。目标是用0.1到0.9范围内的df['Absolute Diff btw formulas']值打印数据帧。谢谢

共有2个答案

甄佐
2023-03-14

您可以使用熊猫。查询:

print( df.query('0.1 <= `Absolute Diff btw formulas` <= 0.9') )

打印:

    Temp in Celsius  Norm Temp in F  Make shift Temp in F  Absolute Diff btw formulas
16             16.0            60.8                  60.0                         0.8
17             17.0            62.6                  62.0                         0.6
18             18.0            64.4                  64.0                         0.4
19             19.0            66.2                  66.0                         0.2
21             21.0            69.8                  70.0                         0.2
22             22.0            71.6                  72.0                         0.4
23             23.0            73.4                  74.0                         0.6
24             24.0            75.2                  76.0                         0.8
解晟睿
2023-03-14

使用-

print(df[(df['Absolute Diff btw formulas']>=0.1) & (df['Absolute Diff btw formulas']<=0.9)])

 类似资料:
  • 我有一个数据框: 我通过以下方式按德国国家标签“DE”过滤此内容: 如果我想筛选更多的国家,我必须通过以下方式手动添加它们:。然而,我想创建一个国家列表,并自动生成此声明。 大概是这样的: 我想我可以过滤df 3次,然后通过将这些片段合并回来,但是有没有更通用的函数来实现这一点?

  • 我正在使用谷歌表单的过滤功能,但无法按我想要的方式使用,已经3天了。。。 基本上,我有第1页,有一列“电子邮件”和一列“潜在客户ID”。表2具有相同的“潜在客户ID”,但已过滤。含义,第1页,其“顺序为1,2,3,4,5…”。。。第二张不是,像是2,4,5,23,41。。。我想在表1中找到正确的电子邮件地址,该地址在两个表中具有相同的Lead ID。我使用了Filter函数,它工作得非常好,因为它

  • 我希望筛选Pandas Dataframe以从两种不同类型的属性中选择数据: 但是我不能使用这个选项,或者为此,你能给我一个如何做的例子吗。

  • 问题内容: 我正在尝试使用数组映射进一步过滤对象,以准备将其发送到服务器进行保存。我可以过滤为1个键值,这很不错,但是我想更进一步,将其与布尔值内部进行比较。 所以,现在这就是我所拥有的- 这对于拉出id很有用,但是如果它们的选定值== false,我不想将它们压入这个新数组中,因此我将一个条件作为进一步过滤条件。这有点奏效,我得到了一个id数组,但是具有.selected == false的id

  • 本文向大家介绍jQuery多条件筛选如何实现,包括了jQuery多条件筛选如何实现的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jquery实现多条件筛选特效。分享给大家供大家参考。具体如下: 我们在电商平台购买商品时,在商品列表页根据品牌、款式、价格范围等条件进行筛选查询,当点击某个条件时,在页面上会显示用户所选择的条件集合,并且将对应的符合条件的商品信息展示出来。那么今天我们使用jQ

  • 我有下面的数据 我必须根据(a)列对数据进行分组,然后我必须删除具有相同(b)值的行。下面我展示了它应该是什么样子, 熊猫有什么简单的方法可以做到这一点吗?