cerebro.run ValueError: invalid literal for int() with base 10
-
Hi. I'm Japanese boy.
I will try hard to write in English.I am doing the Adding a Data Feed of quickstart using pandas.
But When cerebro.run, an error of ValueError: invalid literal for int () is issued.Do you know what is wrong?
-
Your
datetime
in the dataframe seems to be an index.From the docs (just checked)
- The new parameters have the names of the regular fields in the DataSeries and follow these conventions - datetime (default: None) - None : datetime is the “index” in the Pandas Dataframe
And you are providing a name for
datetime
. It might be that. Let it beNone
. -
Thank you for your reply.
I solved it by deleting this!
datetime='datetime' -
The error message invalid literal for int() with base 10 would seem to indicate that you are passing a string that's not an integer to the int() function . In other words it's either empty, or has a character in it other than a digit.
You can solve this error by using Python isdigit() method to check whether the value is number or not. The returns True if all the characters are digits, otherwise False .
if val.isdigit():
The other way to overcome this issue is to wrap your code inside a Python try...except block to handle this error.
Python2.x and Python3.x
Sometimes the difference between Python2.x and Python3.x that leads to this ValueError: invalid literal for int() with base 10 .
With Python2.x , int(str(3/2)) gives you "1". With Python3.x , the same gives you ("1.5"): ValueError: invalid literal for int() with base 10: "1.5".
-
@atori Can you suggest what did you do to correct the error ?
I am also facing the same error.Error that I get is :
ValueError -> 14 cerebro.run()ValueError: invalid literal for int() with base 10: '28-0'
Seeking guidance on what has gone wrong and how can this be course corrected .