Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pydantic validation error when running script number 2 from Google Collab #304

Open
lukasdenkstatt opened this issue Aug 10, 2023 · 3 comments

Comments

@lukasdenkstatt
Copy link

Hi there,

I downloaded the code for the SBTI finance tool from GitHub and also downloaded the scripts from Google Collab. I tried to run the second script "2_quick_temp_score_calculation" and I get the following error:

Traceback (most recent call last):
File "C:\Users\lukas.schiele\Desktop\SBTi-finance-tool-main\2_quick_temp_score_calculation.py", line 79, in
companies = SBTi.utils.dataframe_to_portfolio(df_portfolio)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\lukas.schiele\Desktop\SBTi-finance-tool-main\SBTi\utils.py", line 196, in dataframe_to_portfolio
return [
^
File "C:\Users\lukas.schiele\Desktop\SBTi-finance-tool-main\SBTi\utils.py", line 197, in
PortfolioCompany.model_validate(company)
File "C:\Users\lukas.schiele\Desktop\pythonprojects\SBTi-finance-tool-main\Lib\site-packages\pydantic\main.py", line 496, in model_validate
return cls.pydantic_validator.validate_python(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pydantic_core._pydantic_core.ValidationError: 1 validation error for PortfolioCompany
user_fields
Field required [type=missing, input_value={'company_name': 'Company...ngagement_target': True}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.1/v/missing

Process finished with exit code 1

What do I need to do to resolve this error?

@chowdud
Copy link

chowdud commented Sep 18, 2023

Hi, I'm also receiving the same issue as @lukasdenkstatt and this appears in the first script for "Analysis" too. It looks to originate from SBTi.utils.dataframe_to_portfolio, but upon further inspection of the method, the PortfolioCompany model clearly defines "user_fields" as optional. Any updates on what may be the issue here?

@chowdud
Copy link

chowdud commented Sep 18, 2023

@lukasdenkstatt I think I may have it working now. Can you confirm where you are installing your requirements.txt packages as well as the venv you are using (local or global)?

@lukasdenkstatt
Copy link
Author

@chowdud Good to hear that it works for you!

One requirements.txt package is installed in the folder "SBTi-finance-tool-main" and the other under "SBTi-finance-tool-main/examples". I think I am using a local venv.

Thanks for your help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants