小编Pin*_*ong的帖子

使用 pd.isin() 检查一列中的值是否在另一列的列表中

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

df = pd.DataFrame({
    'x' : range(0,5),
    'y' : [[0,2],[3,4],[2,3],[3,4],[7,9]]
})
Run Code Online (Sandbox Code Playgroud)

我想测试 x 的每一行,如果该值位于 y 列指定的列表中

df[df.x.isin(df.y)]
Run Code Online (Sandbox Code Playgroud)

所以我最终会得到:

在此输入图像描述

不知道为什么 isin() 在这种情况下不起作用

python pandas isin

4
推荐指数
2
解决办法
3991
查看次数

汇总多个变量并分配给新的变量名称

我正在使用 'across' 函数来获取一系列变量的汇总统计信息(例如,所有以 'f_' 开头的变量。由于 across 函数会将汇总结果存储回原始变量名称,因此具有多个 cross具有不同汇总函数的函数会覆盖结果(如下所示)。我可以想到一种解决方法,方法是在 summarise() 后重命名变量并 cbind 结果单个表。但是,这看起来很麻烦,我想知道是否有是将一系列汇总结果存储到新变量名称的一种整洁(双关语)方式。

var_stats = data %>% 
  summarise(
    across(starts_with('f_'), max, na.rm = T),
    across(starts_with('f_'), min, na.rm = T)
  )
Run Code Online (Sandbox Code Playgroud)

r dplyr

1
推荐指数
1
解决办法
559
查看次数

标签 统计

dplyr ×1

isin ×1

pandas ×1

python ×1

r ×1