Auto ANT is a user-friendly graphical interface designed for the automated extraction of passive membrane parameters, firing properties, and action potential waveform analysis from multi-sweep patch-clamp recordings. Auto ANT relies on two well-established feature extraction packages in Python: eFEL (Electrophysiology Feature Extraction Library) (Ranjan & Van Geit, 2020) and IPFX (Intrinsic Physiology Feature Extractor). These packages are widely used for extracting electrophysiological features from raw recordings, but they require knowledge of the Python programming language, and they do not offer built-in batch analysis solutions for large datasets.
Auto ANT is a complete, standalone application that integrates these tools into an automated and user-friendly interface.The key innovation of Auto ANT lies in its automation feature, which allows users to batch-analyse multiple files recorded with the same protocol in just a few steps. This significantly reduces the time and effort required to analyse large datasets while promoting consistency and reproducibility.
Auto ANT relies on multiple Python packages, with the majority of packages being part of the Python Standard library. These packages include:
Tkinter, which is the primary package upon which Auto ANT is built, and idelib is used to enable tooltips within the application.
Sys and OS support accessing local files. The Threading package enables multi-threaded processes in Auto ANT, and it is supported by the Signal package which is used to terminate active threads when Auto ANT is shut down. Additionally, Logging is used to control the logging output of Auto ANT. The webbrowser package is used to enable a user to click a button that opens the user’s standard browser and takes them to the published paper, or the GitHub page where Auto ANT is available for download and more usage information is stored. Finally, Pyinstaller was used to package the software into an application.
Input Data Format and Acquisition ModeAuto ANT extracts electrophysiological features from recordings obtained in whole-cell patch-clamp mode, specifically supporting files saved in the .abf format (Molecular Devices). The tool accepts multi-sweep recordings from various protocols recorded in current clamp mode, accommodating input recordings with diverse numbers, durations and amplitudes of depolarizing or hyperpolarizing current steps (Fig. 1B). To perform the automated batch analysis, recordings acquired with the same protocol must be placed in a folder and each recording must have a unique name (Fig. 2A). It is important that recordings placed in the same folder have the same protocol duration, while the number and amplitude of steps are irrelevant. For the analysis presented in this paper, we used a protocol of 20 sweeps with a square pulse of 10 pA, from −100 pA to + 100 pA, for 700 ms (Fig. 2B).
Fig. 1Auto ANT is a user-friendly interface for automated analysis of patch clamp recordings. A Workflow diagram with instructions on how to use Auto ANT. B Representative recordings that can be analysed with Auto ANT. Recordings acquired with the same protocol are placed in the same folder for batch analysis. C Auto ANT window upon launching. From this window the user sets the input and output folder (i), configures the analysis (ii), and selects which tables and graphs to generate (iii) based on the input recordings and analytical needs. D Analysis window that appears upon pressing the “run analysis” button, after configuring the analysis. This window shows the analysis progress while the analysis is ongoing (right), and whether the analysis was completed successfully (middle) or with errors (left). E When the run is complete, the “detailed logs” button appears, and logs can be accessed. F Auto ANT generates the selected tables and graphs that are automatically saved in Excel and PNG format, respectively
Fig. 2Auto ANT is easy to configure, and it guarantees maximum flexibility by allowing the user to custom which tables, properties and graphs to include in each analysis. A The folder containing the recordings for the comparative analysis is set as Input folder and the Output folder name is set to “Test run”. B The analysis settings are configured based on the recordings in the Input folder. On the right, the representative recording file showing where to check Recording channel, Protocol channel, Protocol starts and Protocol ends in the .abf file. C All tables are selected for this comparative analysis. By clicking on the gear symbol adjacent to each table name, the configuration window for the respective table appears. The single properties to include in each table are listed here: all properties are selected for the comparative analysis. D All graphs are selected for this comparative analysis. When hovering on the question mark symbol adjacent to each setting, a sample graph or explanation appears. E When clicking on the Run Analysis button, the butch analysis starts: all recordings contained in the Input Folder are analysed and a folder named after the Output folder name is automatically created in the Input Folder. All the selected outputs are automatically saved in the Output folder
User InstructionsAuto ANT is downloadable at https://github.com/Auto-ANT/Auto-ANT. Instructions for downloading the software are provided (Supplementary material). Upon launching, the interface opens, and the user can configure the analysis (Fig. 1A, C).
Input and Output (Fig. 1Ci).
1.Input Folder—Folder containing recordings acquired with the same protocol.
2.Enter output folder name—The user can select the name of the output folder, which is automatically created inside the Input folder. The outputs of the automated analysis are saved here. If no name is selected, a standard name is assigned to the folder.
Configure Analysis (Fig. 1Cii).
1.Recording channel—Channel where the recording is stored
2.Protocol channel—Channel where the protocol is stored
3.Protocol starts (ms)—Time when the current steps start
4.Protocol ends (ms)—Time when the current steps end
Datasets to generate (Fig. 1Ciii).
The user selects which features to extract from the recordings in the input folder. Firing properties or passive membrane properties can be extracted together or separately, depending on the user’s needs and the specific recordings that are analysed (Fig. 1B). The output tables are automatically saved in Excel format in the user-defined output folder (Fig. 1E). The names of the Excel files for the firing properties and passive membrane properties are selected by the user. If no name is entered, standard names are used.
1.Firing properties table – It generates a table containing firing features and single action potential (AP) properties extracted from each sweep of the recordings contained in the input folder. The extraction of AP features requires input recordings performed in current clamp, where at least one depolarizing current step is injected in the cell to induce at least 1 AP (Fig. 1B, blue square). The user selects the intrinsic properties to extract depending on their analytical needs (Fig. 2C). The average properties of all the action potentials on each sweep are calculated (Average AP). Single AP properties are provided for the first, second, second last and last AP (respectively AP1, AP2, APsL and APL) on each sweep.
2.Passive membrane properties table – It generates a table containing the passive membrane properties extracted from each sweep of the recordings contained in the input folder. The extraction of passive membrane properties requires input recordings performed in current clamp, where at least one hyperpolarizing current step is injected in the cell (Fig. 1B, orange square). The user selects the intrinsic properties to extract depending on their analytical needs (Fig. 2C).
3.Neuron overview table – It generates a summary table containing an overview of the properties of each recording in the input folder. Data in this table are a summary of firing properties and passive membrane properties per neuron, therefore single sweeps are not included in this table. The extraction of the complete set of properties in this table requires input recordings performed in current clamp, where hyperpolarizing and depolarizing current steps are injected into the cell and at least one AP is induced (Fig. 1B, overlap of blue square and orange square). However, the user selects the intrinsic properties to extract depending on their analytical needs (Fig. 2C), hence this table can be adapted to different recording types.
Graphs to generate (Fig. 1Ciii).
Similarly, the user selects which graph to generate from the input data (Fig. 2D).
1.Protocol plot – It plots the protocols used for the recording showing the hyper-/de-polarizing current steps delivered to the cell in different colors (Fig. 3D).
2.Recording plot – It plots the recordings contained in the input folder showing the sweeps is different colors, matching the corresponding current step in the protocol plot (Fig. 3E).
3.Firing-current plot – It indicates how much current is needed to make the cell fire at the corresponding firing rate (Fig. 3F).
4.Current–voltage linear regression plot – It indicates how much current is needed to bring the cell to the corresponding voltage. A linear regression model is used to estimate the input resistance of the cell (Fig. 3G). Sweeps containing APs are automatically excluded from this plot.
Fig. 3Auto ANT reduces analysis time by 91% and provides more comprehensive datasets when compared to manual analysis. A-C Output tables generated with Auto ANT batch analysis containing information from all recordings in the input folder. Tables are divided into A Firing properties table, B Passive membrane properties table, and C Neuronal overview table. D-G Output graphs generated with Auto ANT: D Protocol plot, E Recording plot, F Firing-current plot, and G Current–voltage linear regression plot. H Bar plot showing the time need for Auto ANT batch analysis of all the recordings contained in the input folder versus the estimate time needed for analyzing the same recordings manually. I Representative comparison between the amount of data extracted with Auto ANT batch analysis in 15 min and 20 s, versus the amount of data obtained by manual analysis in 180 min
Once all the configuration for the automated analysis is done, the user presses the “Run analysis” button (Fig. 1C). A window appears indicating the progression and state of the analysis (Fig. 1D). If errors occur, a short description of the error is reported in this window (Fig. 1D). After a run is completed, the "Detailed Logs" button becomes visible (Fig. 1E). Clicking this button opens a new window with the logs from recent runs since the application was opened. The log shows general information about the files being created (tagged as Info), as well as warnings (tagged as Warning) and detailed information regarding errors (tagged as Errors). Errors affecting all recordings in the dataset result in no output table or plot being produced. If an error interests only some recordings in the dataset, those specific recordings will be indicated in the status window and excluded from the output tables, while the rest of the dataset is analysed as usual. If an error affects only a specific output table or plot, only that specific table or plot will be blocked, while all other outputs will be produced normally. A list of common errors is provided in the Supplementary material (2. Error Handling).
Output DataGeneral data contained in both Firing properties and Passive membrane properties tables.
Sweep – Sweep number (starting from 0).
Current step (pA) – amount of current injected.
Steady membrane voltage (mV) – membrane voltage in response to the injected current. It is calculated as the average voltage for the last 10% of the current injection duration.
Firing properties table.
1-Firing features
N of spikes – number of action potentials (AP) that are detected during the current injection. If spikes happen before or after the current injection, they are automatically excluded.
Latency (ms) – Time from the start of the current injection to the peak of the first AP.
Frequency (Hz) – Firing frequency calculated as N of spikes/Current injection duration (ms) * 1000.
First ISI (ms) – Inter Spike Interval between first and second AP.
Mean ISI (ms) – Average ISI of all the APs of the sweep.
ISI CV – Coefficient of variation (CV) of the ISI, calculated as ISI standard deviation/Mean ISI. It is a measure of rhythmicity.
2-Action potential shape features
AP amplitude (mV) – Height of the AP from firing threshold to peak.
AP peak (mV) – Maximum voltage reached by the AP.
AP width (ms) – Width of the AP at the firing threshold.
AP half width (ms) – Width of the AP at half the AP amplitude.
AP threshold (mV) – Voltage at the AP start.
AP peak upstroke (V/s) – Maximum rise rate of the AP (positive number).
AP peak downstroke (V/s)—Minimum fall rate of the AP (negative number).
AP rise/fall rate – Rate of change of voltage over time, calculated as dV/dt from AP threshold to AP peak (rise) and AP peak to AHP voltage (fall).
AP rise/fall time (ms) – Time between AP threshold and peak in the depolarization phase (rise) and repolarization phase (fall) of the AP.
AHP abs depth – Minimum voltage reached during after hyperpolarization (AHP)
AHP time from peak (ms) – Time from AP peak to AHP.
AHP depth from threshold (mV) – Voltage delta between AP threshold and AHP.
Amplitude AP1/APL – Ratio between the amplitude of the first and the last action potential.
Peak AP1/APL—Ratio between the peak of the first and the last action potential.
Half width AP1/APL—Ratio between the half width of the first and the last action potential.
Passive membrane properties table.
Voltage base (mV) – Membrane voltage before current is injected. It is calculated as the average voltage during the last 10% of the time before the current injection.
Time constant (ms) – The time it takes for the cell membrane's potential to fall to 63% of its final value after a negative current pulse. It is calculated as the exponential fit of the membrane voltage during hyperpolarization.
Input resistance (Gohm) – It indicates how much the voltage changes in response to a steady current. It is calculated using Ohm's law as the Steady membrane voltage/current step per sweep.
Capacitance (pF)—The electrical capacitance of the membrane per sweep calculated as Time constant/Input resistance.
Decay time constant (ms) – Time constant of the voltage decay after the injected current, calculated as specified for Time constant.
Sag amplitude (mV) – Amplitude of the sag, calculated as the difference between the minimum membrane voltage reached during hyperpolarization and the steady membrane voltage in the last 10% of the protocol step duration.
Sag ratio – Ratio between the Voltage delta and the Sag amplitude, calculated as (Voltage base – steady membrane voltage)/Sag amplitude.
Sag time constant (ms) – Time constant of the exponential voltage decay from the bottom of the sag to the steady membrane voltage.
Neuronal overview table.
Resting membrane potential (mV) – Membrane voltage when the neuron is in a resting state. It is calculated as the average voltage during the last 10% of the time before the first current step of the protocol is delivered to the neuron.
Sag amplitude (mV) – Amplitude of the sag, calculated on the most hyperpolarized step of the protocol.
Sag ratio – Ratio between the Voltage delta and the Sag amplitude calculated on the most hyperpolarized step of the protocol.
Membrane input resistance (Gohm) – It is a measure of excitability, and it is calculated as the slope of the linear regression of the membrane voltage on the injected current, in absence of AP. If AP are present in the recording, the corresponding sweeps are automatically excluded from this equation.
Membrane time constant (ms) –It is calculated as the average exponential decay of the membrane voltage in response to the injection of hyperpolarizing current steps between −50pA and −40pA, in absence of AP. If AP are present in the recording, the corresponding sweeps are automatically excluded from this equation.
Membrane capacitance (pF) – The electrical capacitance of the cell membrane calculated as Membrane time constant/membrane input resistance.
Rheobase (pA) – It is the amount of current necessary to induce the first AP.
AP1 intrinsic properties – All the AP waveform features of the first AP fired by the neuron (AP1) are included in this table, as described in the Firing properties table.
Output Data FormatThe output generated by Auto ANT consists of ready to use Excel tables: Firing properties table, Passive membrane properties table, and Neuronal overview table (Fig. 3A-C). Users have the flexibility to select which specific variables to include in each table based on their analytical needs (Fig. 2C).
For the Firing properties table and the Passive membrane properties table, within each Excel file, the name of each sheet corresponds to the name of the respective input recording. Each row in the sheet corresponds to an individual sweep from that recording (Fig. 3A-B).
In the AP properties table, only sweeps that contain at least one action potential are included. Conversely, the passive membrane properties table comprises only those sweeps that do not contain any action potentials. This separation of data ensures that users can efficiently analyse the relevant characteristics of each type of recording.
For the Neuronal overview table, the Excel file consists of a single sheet where each row corresponds to a recording (Fig. 3C).
Additionally, Auto ANT provides graphical outputs in the form of plots, which are saved in .png format in the same output folder. These graphs can be generated independently or simultaneously with the tables and are automatically named after the input recording, allowing for easy matching with the corresponding sheet in the Excel file and origin cell.
Comparative Analysis and Data ValidationTo validate the accuracy of Auto ANT, we used 18 recordings from a previously published dataset (Pizzirusso et al., 2024). Data acquisition was conducted as detailed in the original paper (Pizzirusso et al., 2024). We placed the 18 recordings, which were obtained using the same current protocol, in a folder (Fig. 2A). All recordings in the folder (Input folder) are on channel 0 (Fig. 2B, Recording channel) while the corresponding current protocols are on channel 1 (Fig. 2B, Protocol channel). The protocols consist of 20 hyper-/de-polarizing current steps of 10 pA, from −100 pA to + 100 pA) delivered to the cell between millisecond 115 (Fig. 2B, Protocol starts) and millisecond 815 (Fig. 2B, Protocol ends). Since the recordings in this dataset contain both hyperpolarizing and depolarizing current steps, we configured Auto ANT to generate the Firing properties table, the Passive membrane properties table and the Neuronal overview table at the same time, along with the four graphical outputs. For the tables, all available properties were selected: 24 firing properties, 10 passive membrane properties and 22 overview properties (Fig. 2C). Then, we compared these properties extracted with Auto ANT with those previously published for the same dataset. For this comparison, we performed a Pearson correlation test, a Bland–Altman analysis, and a paired t-test. Normality was assessed through a Shapiro–Wilk test. All statistical analyses were performed using GraphPad 10.0.2.
Software AvailabilityAuto ANT is an open-source software, and it can be downloaded at https://github.com/Auto-ANT/Auto-ANT. The Auto ANT software is available as an easily downloaded application which is compatible with PC and Mac. While Auto ANT compatibility with Linux has not been formally tested, external feedback indicates that it can run on Linux-based systems. Downloading the Auto ANT application requires no programming expertise as it can be launched without any installation process. The raw code is also available. Expert users can modify and adapt the code for specific needs.
Comments (0)