Pandas对应SQL的in和not in实现

在Pandas提供了pd.isin(),使用它可以实现SQL的in和not in。

not in 对应于:

~a.isin(b)

示例:

假如有以下dataframe数据,它包含了列data如下:

>>> df
  data
0   a
1   b
2   c
3   d

有数组数据arr

>>> arr
['b', 'd']

isin的使用

>>> df.data.isin(arr)
0    False
1     True
2    False
3     True
Name: data, dtype: bool
>>> df[df.data.isin(arr)]
  data
1   b
3   d
>>> df[~df.data.isin(arr)]
  data
0   a
2   c

版权声明:著作权归作者所有。

相关推荐

一些有用的pandas代码片段

# 列出dataframe指定列的唯一值 df['Column Name'].unique() # 把列的数据类型转换为数字。如果有非数字值,则会出错。 pd.to_numeric(df['Column Name']) # 把列的数据类型转换为数字,如果非数字值,则会转换为NaN pd.to_numeric(df['Column Na

MySQL开启general_log查看执行的SQL语句

general log会记录下发送给MySQL服务器的所有SQL记录,因为SQL的量大,默认是不开启的。一些特殊情况(如排除故障)可能需要临时开启一下。开启MySQL的general logMySQL有三个参数用于设置general log:general_log:用于开启general log。ON表示开启,OFF表示关闭。log_output:日志输出的

JavaScript:Map根据值查找对应的键

Map根据值查找键,可以使用for..of迭代Map的Entry,再判断Entry的值:键值一对一function getByValue(map, searchValue) {   for (let [key, value] of map.entries()) {   

Kotlin实现Java的三元条件运算

在Kotlin没有类似Java的三元条件运算:a ? b : c 在Kotlin有几种等效的方法:ifval r =if (a) b else c whenval r = when(a) {     true