问题标签 [isin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
54 浏览

python - 根据条件匹配其他列中的行值更新列

我需要根据它们在其他列中包含的值,用更新的值替换以 _4 结尾的列中的值。如果前 3 列包含 1,则第四列应为零。如果前三列包含零,则第四列应为 1。

在下面的代码中,我想将此计数 var 分配为与公共列(即 a 或 b)具有相同的名称 - 然后用这个新的计数列替换原始数据框中的 x'_4' 列但是它也不是正确计数,因为当前 a 和 b 的计数。欢迎任何评论。谢谢

我当前的代码看起来像这样

原始数据框中被覆盖的列应如下所示

0 投票
2 回答
50 浏览

python - 使用列表过滤第二行的数据框

我有一个数据框需要保存在下面的结构中。

有没有办法只保留列表中包含第二行的列?我只熟悉为列执行此操作

预期产出

0 投票
1 回答
89 浏览

python-3.x - 如何在 IF 语句的上下文中使用 Python Pandas isin()

在这里解决问题时遇到了一些麻烦,可以使用一些建议。

我不断收到错误:

ValueError:Series 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。

例如,我尝试过适合的变体(基于谷歌搜索)

没有喜悦。

期望的最终目标

  1. 读取数据框,其中“任务类型”字段中的所有值都根据 [col_list] 中提供的列表进行检查。
  2. 如果 [col_list] 变量中的这两个值都存在 - TRUE,如果不存在:FALSE
  3. 在 IF 语句级别进行评估 - 返回 bool 值(希望所有人从此过上幸福的生活)

拜托,任何想法都会很棒。我看到 isin() 用于所有功能,但没有在 IF 语句中使用 - 非常有兴趣了解该方法。

提前谢谢大家

0 投票
2 回答
48 浏览

python - Pandas:使用 isin() 检查其他数据框中是否存在数据框观察结果

我有df1:

和df2:

我想检查 df1 中是否存在 df2 中的行。为此,我尝试了:

最终目标是将 df2 中的观察(行)添加到 df1(如果它们不存在)。但是,由于在trip_id 中为索引0 返回True,所以df2 的整个第一行不会在df1 中被标识为新行。只要观测值中有一个元素不同,就应该在 df1 中将其添加为新行。

要将 df2 中的新行添加到 df1,我将使用:

所以最终,最终的代码应该是:

0 投票
1 回答
34 浏览

python - Pandas 过滤多列和多行

我正在尝试根据某个日期和国家/地区名称过滤数据框。我已经提取了我希望最终数据框包含的列。我还创建了一个我想要过滤的国家/地区名称列表。

然后我尝试过滤我想要的日期,即 1992 年 4 月 27 日。

然后我尝试通过执行以下操作对我想要的国家名称应用日期过滤器:

当我应该有 12 行时,它只显示 2 行

在此处输入图像描述

但是,如果我尝试

str.contains() 而不是 isin()

方法我可以检索到我想要的正确结果。

在此处输入图像描述

有人可以解释一下差异以及为什么会这样吗?

0 投票
1 回答
70 浏览

python - 两个二维数组的 Numpy element-wise isin

我有两个数组:

预期的输出将与数组“a”的形状相匹配,并且是:

数组 a 和 b 的第一个维度大小始终匹配(在本例中为 3)。

我希望计算的是每个数组的每个索引(0 到 2,因为这里有 3 个维度)是数组“a”中的每个数字是否存在于数组“b”的相应第二维中。

我可以使用以下代码循环解决这个问题,但我想对其进行矢量化以获得速度提升,但在这里坐了几个小时,我无法弄清楚:

感谢您的任何指导!任何事情都会非常感激:)

0 投票
1 回答
57 浏览

pandas - 带有 isin 的 Pandas groupby 连续组

我有一个如下所示的数据框:

我想要的输出是表示第 2 列中的值是否在下一个连续组中的布尔值。这些组由第 1 列中的值表示。例如,4 显示在第 0 组和下一个连续组,第 1 组中:

第 2 组的输出将是 Nan,因为第 3 组不存在。

到目前为止,我已经尝试过:

这不起作用,因为我无法isin()groupby series.

0 投票
1 回答
79 浏览

python - Dataframe.isin 对我不起作用,即使有相交的行也返回相同的行数

我在另一个数据集的 for 循环中应用内部联接,现在我只需要删除已经是内部联接一部分的行,所以我使用 Dataframe.isin(another_df) 但它没有给我预期的结果。我检查了列名和它们的数据类型,它们都是一样的。有人可以帮我吗?

在下面的代码中,isin 是我在两个数据帧之间检查的地方,但我仍然没有得到任何响应,即使它们具有相同的行数和列数,我也会得到相同的行集。注意:我在 isin 函数中删除了一个额外的列,因为它是其中一个数据帧中存在的额外列。我的代码如下所示:

0 投票
2 回答
37 浏览

python - 保留不在列表中的行

我有一个包含销售和优惠的数据框。

我有一个我想避免的报价列表,在这个例子中只有 1 个报价。

remove_these_offers_list = ["£10 off appple"]

当我尝试使用删除此优惠时, df.loc[~(df.offer.isin(remove_these_offers_list))] 我得到一个空的 df,因为从技术上讲,该字符串包含在两行中。

预期产出

0 投票
2 回答
38 浏览

python - 如何使用一个数据框的日期和值并在另一个数据框中使用此条件进行搜索

我想根据日期在另一个数据框中搜索一个值(来自一个数据框)。

我有一个基于 1 分钟频率的 DatetimeIndex 数据框。我将 Dataframe 重新采样为 5 分钟和每天的频率。这是代码和输出:

我现在想看看每天的高潮在 5 分钟帧中显示的位置。我试过了

最后一行中的 True 我不想要。这似乎是 data_daily 索引 2021-08-04 的值。我想要的是在 data_5min 中搜索 data_daily 中的每个值,但取决于日期。我试过了

data_5min['high'].isin(data_daily['high']) & data_5min.index.isin(data_daily.index.date)

但我不让它工作。

你能帮忙的话,我会很高兴。