5 (1)

5 (1)

#### Overview of this book

Are you looking to start developing artificial intelligence applications? Do you need a refresher on key mathematical concepts? Full of engaging practical exercises, The Statistics and Calculus with Python Workshop will show you how to apply your understanding of advanced mathematics in the context of Python. The book begins by giving you a high-level overview of the libraries you'll use while performing statistics with Python. As you progress, you'll perform various mathematical tasks using the Python programming language, such as solving algebraic functions with Python starting with basic functions, and then working through transformations and solving equations. Later chapters in the book will cover statistics and calculus concepts and how to use them to solve problems and gain useful insights. Finally, you'll study differential equations with an emphasis on numerical methods and learn about algorithms that directly calculate values of functions. By the end of this book, you’ll have learned how to apply essential statistics and calculus concepts to develop robust Python applications that solve business challenges.
Preface
1. Fundamentals of Python
Free Chapter
2. Python's Main Tools for Statistics
3. Python's Statistical Toolbox
4. Functions and Algebra with Python
5. More Mathematics with Python
6. Matrices and Markov Chains with Python
7. Doing Basic Statistics with Python
8. Foundational Probability Concepts and Their Applications
9. Intermediate Statistics with Python
10. Foundational Calculus with Python
11. More Calculus with Python
12. Intermediate Calculus with Python

# Using Trapezoids

1. We can get better approximations sooner using trapezoids rather than rectangles. That way, we won't miss as much area, as you can see in Figure 10.13:

Figure 10.13: Using trapezoids for better approximations to the curve

The following is the formula for the trapezoidal rule:

Figure 10.14: Formula for area of trapezoids

The heights of the segments at the endpoints x = a and x = b are counted once, while all the other heights are counted twice. That's because there are two heights in the formula for the area of a trapezoid. Can you guess how to adapt your integral function to be trapezoidal?

```def trap_integral(f,a,b,num):
"""Returns the sum of num trapezoids
under f between a and b"""
width = (b-a)/num
area = 0.5*width*(f(a) + f(b) + 2*sum([f(a+width*n) for n in range(1,num)]))
return area```

Now we'll run the `trap_integral...`