Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将布尔选择器解析为my函数中的数据帧_Python_Pandas - Fatal编程技术网

Python 将布尔选择器解析为my函数中的数据帧

Python 将布尔选择器解析为my函数中的数据帧,python,pandas,Python,Pandas,Python 3.6 我希望能够有一个函数,该函数将布尔选择器用于数据类型。熊猫使用的是[]切片语法,我似乎无法在函数中复制这种语法 我想我想知道 键入时调用什么函数 import pandas as pd df = pd.DataFrame(<data>) result = df.<somecolumn>[<Boolean selector>] 将熊猫作为pd导入 df=pd.DataFrame() 结果=df。[] 我想写一个函数来实现这一点: d

Python 3.6

我希望能够有一个函数,该函数将布尔选择器用于数据类型。熊猫使用的是
[]
切片语法,我似乎无法在函数中复制这种语法

我想我想知道

键入时调用什么函数

import pandas as pd

df = pd.DataFrame(<data>)

result = df.<somecolumn>[<Boolean selector>]
将熊猫作为pd导入
df=pd.DataFrame()
结果=df。[]
我想写一个函数来实现这一点:

def apply_selector(df, column, selector):
    return df.column.<a function>(selector) # <a function> represents a conceived function that pandas executes when the `[]` slice syntax is used with a Boolean selector
def应用选择器(df、列、选择器):
返回df.column。这就是我试图通过一个函数来实现的


您可以尝试使用
查询来实现您的功能:

df = pd.DataFrame({'A': [1,2,3,4,5], 'B': [2,2,2,4,4]})

def apply_selector(df, column, selector):
    return df.query(selector)[column]

apply_selector(df, 'A', 'A >= 3')

#2    3
#3    4
#4    5
#Name: A, dtype: int64

您可以尝试使用
query
实现您的函数:

df = pd.DataFrame({'A': [1,2,3,4,5], 'B': [2,2,2,4,4]})

def apply_selector(df, column, selector):
    return df.query(selector)[column]

apply_selector(df, 'A', 'A >= 3')

#2    3
#3    4
#4    5
#Name: A, dtype: int64

如何调用该函数<代码>应用选择器(df,'some col','x>0')
?是的^@Jamesschiner您可以接受Psidom的答案~该函数应该如何调用<代码>应用选择器(df,'some col','x>0')
?是的^@Jamesschiner你可以接受Psidom的答案~太棒了,有时候当你甚至难以描述你想做什么的时候,在文档中很难找到你想要的!谢谢是的,这就是我所想的,你把它做成了~~+1美,有时候,当你甚至难以描述你想做什么的时候,在文档中很难找到你想要的东西!谢谢是的,这就是我想的,你做到了