# Lesson 7

## Custom Functions¶

This lesson covers:

• Writing a custom function

### Problem: Writing a Custom Function¶

Custom functions will play an important role later in the course when estimating parameters. Construct a custom function that takes two arguments, mu and sigma2 and computes the likelihood function of a normal random variable.

$$f(x;\mu,\sigma^{2})=\frac{1}{\sqrt{2\pi\sigma^{2}}}\exp\left(-\frac{(x-\mu)^{2}}{2\sigma^{2}}\right)$$

Use def to start the function and compute the likelihood of:

$$x=0,\mu=0,\sigma^{2}=1.$$

The text in the triple quotes is the docstring which is optional.

In [ ]:


In [ ]:


In [ ]:



### Exercises¶

#### Exercise: Custom Function¶

Write a function named summary_stats that will take a single input, x, a DataFrame and return a DataFrame with 4 columns and as many rows as there were columns in the original data where the columns contain the mean, standard deviation, skewness and kurtosis of x.

summary_stats(momentum)

In [ ]:
# Setup: Load the momentum data
import pandas as pd

In [ ]:



Test your function using the momentum data in the next cell.

In [ ]:



#### Exercise: Custom Function¶

Change your previous function to return 4 outputs, each a pandas Series for the mean, standard deviation, skewness, and the kurtosis.

Returning multiple outputs uses the syntax

return w, x, y, z


Test your function using the momentum data.

In [ ]:



Test your function using the momentum data in the next cell.

In [ ]: