Auerbach-Lab/Behavior-autoanalysis

Supervisor Summarize crashing count_df not found

Opened this issue · 0 comments

Issue

Supervisor-summarize crashed with an error of Error in Build_Counts() : object 'count_df' not found during processing of Green22.

Cause

Issue caused by human error of having an incorrect/unexpected detail of None on 9/18/23.
Line 250 filters for a detail of Alone which is the expected state (and what Green23's should have been.) I have used the Modify entry script to fix entry for Green22, which allowed sup-summarize to function correctly.

Expected Behavior

Supervisor-summarize should be able to make a table in the case that a user accidentally puts in the wrong detail.

Steps to reproduce

Behavior-autoanalysis.zip
Run supervisor-summarize using the rat_data and run_data in the zip.
Will fail due to the detail of None on Green 22.

State:
Green21 works on BBN_60dB_3catch_4s | TTS | BBN | Training | None
Green22 fails on BBN_20-80dB_300ms_4s | TTS | BBN | Rxn | None

Fixed Files
WORKING Behavior-autoanalysis.zip

Quick and Dirty Fix

Changing Line 250 to filter for != "Mixed" instead of == "Alone should provide an adequate fail safe and I don't think it will introduce any issues.

Better Fix

I believe that given the changes made in commit 651b209 the breakdown of Mixed vs. Alone in Build_Counts is now redundant and only introducing an opportunity for issues like this. Thus we could reduce the code blocks from:

  • BBN Rxn/TH PreHL Alone
  • BBN Rxn/TH PreHL Mixed
  • BBN Training/Reset PreHL

to

  • BBN Rxn/TH PreHL
  • BBN Training/Reset PreHL

Code changes to do so:

  • Line 250 remove & detail_current == "Alone"
  • Line 253 remove & detail == "Alone"
  • Line 261 remove code block through line 272

Log of failed run

Rats with no runs in the system for today yet:
	Blue1, Purple3, Purple4, GP3, GP4, TP5, TP6, Green23, TP4, RP1, RP2, RP3, RP4, Green24, Green25, TP1, TP2, BP2, BP3, BP4, BP5, BP6, LP1, Green26 

Processing GP1 (#144)...Done.
Processing GP2 (#150)...Done.
Processing GP5 (#161)...Done.
Processing GP6 (#162)...Done.
Processing LP3 (#195)...Done.
Processing LP4 (#197)...Done.
Processing LP5 (#196)...Done.
Processing LP6 (#198)...Done.
Processing Purple1 (#209)...Done.
Processing Purple2 (#210)...Done.
Processing Red1 (#251)...Done.
Processing Red2 (#252)...Done.
Processing Red3 (#253)...Done.
Processing Red4 (#254)...Done.
Processing Red5 (#255)...Done.
Processing Red6 (#256)...Done.
Processing Teal1 (#257)...Done.
Processing Teal2 (#258)...Done.
Processing Teal3 (#262)...Done.
Processing Teal4 (#263)...Done.
Processing Blue1 (#265)...Warning: There was 1 warning in `summarise()`.
i In argument: `across()`.
Caused by warning:
! Using `across()` without supplying `.cols` was deprecated in dplyr 1.1.0.
i Please supply `.cols` instead.
This warning is displayed once every 8 hours.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Done.
Processing Blue4 (#268)...Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Done.
Processing Green21 (#338)...Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Done.
Processing Green22 (#339)...Warning: Returning more (or less) than 1 row per `summarise()` group was deprecated in dplyr 1.1.0.
i Please use `reframe()` instead.
i When switching from `summarise()` to `reframe()`, remember that `reframe()` always returns an ungrouped data frame and adjust accordingly.
Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
Error in Build_Counts() : object 'count_df' not found