In Python data analysis, how do I profile bottlenecks?

Profiling bottlenecks in Python is essential for optimizing performance in data analysis. By identifying slow parts of your code, you can make informed decisions on where to focus your optimization efforts.

Here’s an example of how to profile a Python script using the `cProfile` module:

import cProfile import pstats import io def my_function(): total = 0 for i in range(10000): total += i ** 2 return total # Create profiler pr = cProfile.Profile() pr.enable() # Start profiling # Call the function you want to profile my_function() pr.disable() # Stop profiling s = io.StringIO() sortby = pstats.SortKey.CUMULATIVE pr.print_stats(sortby=sortby, stream=s) print(s.getvalue())

profiling Python performance optimization bottlenecks cProfile data analysis