From c26cf04110b799a9cf7ac088e9ece67ef1e43bb5 Mon Sep 17 00:00:00 2001 From: Mike Wang <62768671+skcoirz@users.noreply.github.com> Date: Tue, 2 May 2023 10:08:16 -0700 Subject: [PATCH] [check] add import check and warning for pandas (#3944) - as titled, add an `import` catch for pandas with a user suggestion message. --- langchain/agents/agent_toolkits/pandas/base.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/langchain/agents/agent_toolkits/pandas/base.py b/langchain/agents/agent_toolkits/pandas/base.py index fdeb840f..1d880e32 100644 --- a/langchain/agents/agent_toolkits/pandas/base.py +++ b/langchain/agents/agent_toolkits/pandas/base.py @@ -26,10 +26,16 @@ def create_pandas_dataframe_agent( **kwargs: Dict[str, Any], ) -> AgentExecutor: """Construct a pandas agent from an LLM and dataframe.""" - import pandas as pd + try: + import pandas as pd + except ImportError: + raise ValueError( + "pandas package not found, please install with `pip install pandas`" + ) if not isinstance(df, pd.DataFrame): raise ValueError(f"Expected pandas object, got {type(df)}") + if input_variables is None: input_variables = ["df", "input", "agent_scratchpad"] tools = [PythonAstREPLTool(locals={"df": df})]