-
-
Notifications
You must be signed in to change notification settings - Fork 255
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
Availability of the Ax6's V1.5.11 #1
Comments
Very interesting! I'll take a look at it and will try to get the changes integrated into my current version. (I also moved this issue. I just noticed that issues weren't enabled in the Fast-F1 repo.) |
All changes should now be merged in branch "ax6-latest-integration". Branch "ax6-latest" holds the code as you provided it. From my testing, everything looks fine. If you have some scripts that you can easily run, maybe you could run them with the new code too. Just to make sure. My number of test cases is currently a bit limited. Then I can be a bit more confident to merge the changes into master. |
Hi, I've still not used the ax6-latest-integration, but in the last weeks when I've used the ax6-latest, I've had to make some changes to core.py which I send you as an attachment. The first one is to manage the exception that is raised when data are not available on ergast. The second one is from this code:
to this one:
and I had to do that because downloading some of this year sessions or some of the last one (I've downloaded all the 2019 and 2020 GPs and 2020 testing) it complained that the merge was possible only if the arguments were ordered. I think that this latest one should be added to the latest-integration (if you have not done something similar yet). Do you agree? |
Yes, I think it's a good idea to fix both. The ergast one I have already fixed. For the pd.merge_asof problem, I've never had that happen so far. Do you know a session where it happens? Because I'd like to take a look at where the problem is coming from in the first place. |
2020 Hungarian Grand Prix Practice 2 highlights the pd.merge_asof problem. |
I took a look at this. I don't really want to use the sorting fix because the problem is actually somewhere else. This is 2020, Hungary, FP2, Driver 16 Take a look at laps 5,6,7,8
I added the error column. It is the difference between the "Last Lap Time" column and the lap duration you get when subtracting to subsequent values from the "Time" column. It basically shows where the length of the lap is wrong. The reason seems to bee that the API sends Not quite sure what this is intended to be... Maybe a correction of the sector time? The cleanest way to correct this would probably be a major overhaul of I'll be on vacation for a few days and will only be able to look at it properly after that. Concerning the missing patched files, they are in the branch. Did you install it using pip? If yes, that problem should be fixed now. I had to add a manifest and change the setup.py file. |
I've installed the latest-integration branch by downloading the .zip file. |
I have decided that fixing the data merging/lap time error is outside of the scope of integrating this version of the code. I have modified the error handling slightly so that the loading of the data won't fail completely. Instead, if there is incorrect timing data, all data for this driver will be discarded and an error is printed. The rest of the drivers should be loaded fine. This is not a very good solution as most of the drivers' laps might be correct. But I want to prioritize accurate data. Fixing this properly has a high priority but still might take some time. Concerning the patch files, they are in the branch and I have fixed the issues when installing with pip. I will merge this into master now as there is nothing in the branch that makes the overall functionality worse than what it currently is. |
How can I install the ax6-latest-integration branch with pip? |
If you want to select a specific branch when installing, the command is Although you probably want to use master now that the changes have been merged. |
After some major changes to the API data reading/processing code the merge problem should now be fixed properly. This was actually caused because the data source is sometimes jumping back to the previous lap and then back to the current one again. This data which should belong to the previous lap was then added to the current one because there was no special handling for this kind of stuff. There are also some other changes, mainly in an attempt to make everything more robust against edge cases. You can take a look at the changelog if you're interested. |
I've update and trying to download the 2019 Australian Grand Prix Practice 3 I get the following error: `core INFO Loading Australian Grand Prix Practice 3 File "/home/andreak/src/Python/F1data/getDataFromF1.py", line 23, in File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/utils.py", line 127, in decorator File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 347, in load_laps File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 444, in _load_telemetry File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 597, in _augment_position File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 610, in _get_reference_lap File "/usr/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 4095, in getitem IndexError: index 296 is out of bounds for axis 0 with size 296` |
Well, so much for more stability. I was hoping to not have issues like this anymore. |
Does the latest commit solves the issue above wihen getting Australian Grand Prix Practice 3 data? |
I've discovered another different issue with the 2019 Azerbaijan Grand Prix Practice 1: core INFO Loading Azerbaijan Grand Prix Practice 1 File "/home/andreak/src/Python/F1data/getDataFromF1.py", line 13, in File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/utils.py", line 127, in decorator File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 347, in load_laps File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 450, in _load_telemetry File "/home/andreak/.local/lib/python3.8/site-packages/fastf1/core.py", line 951, in _log_progress ZeroDivisionError: integer division or modulo by zero |
Both of these bugs are fixed, and some others too. I have now tested |
Ok, thank you. |
I've done the same including the 2020 testing days and I've found these two issues:
Traceback (most recent call last):
Traceback (most recent call last): |
Ahhh, I forgot to test the testing days. So all in season events should not crash. I spotted the BaseException error too already. It's going to be fixed soon(ish) depending on how much time I have. |
There is also the 2019 Abu Dhabi Grand Prix Practice 3 which give a ValueError. Does it happens to you too? |
Yes it does. I didn't know that one though because I forgot that last season had 21 races not just 20. |
Hi,
I've the ZIP file downloaded by Ax6 github before it disappeared.
It should be v.1.5.11 with some modification made after this year winter testing.
It seems to be better commented and have some differences with your code.
Fast-F1-master-v1.5.11.zip
The text was updated successfully, but these errors were encountered: