## Boxplots comparing two different populations

A common scenario in research is trying to determine whether two groups systematically differ on some characteristic. We can simulate this situation by generating normally *distributed random variates* for imaginary groups 1 and 2. In fact there is a difference: group 2 has a higher mean of 105 compared to 95. Parallel boxplots are a good way of showing the distribution of scores across the two groups.

```
import pylab
import random
popSize = 100
category1 = []
category2 = []
## Start by generating scores for category 1 individuals
## Their mean score is 95
for i in range(popSize):
category1.append(random.normalvariate(95,10))
## Now generate scores for category 2 individuals
## They have a higher mean of 105
for i in range(popSize):
category2.append(random.normalvariate(105,10))
scores = [category1,category2]
pylab.boxplot(scores)
pylab.savefig('boxplots.png')
pylab.show()
```

## Line graphs

To show how to plot a line graph in Python, we can generate a *fictional time series*. Imagine a 100-day time span, and that the price of some commodity tends to increase by about 0.2 units per day.

```python import pylab import random

duration = 100 meanIncrease = 0.2 stDevIncrease = 1.2

## Here we generate a fictional time series, for a

## variable that generally increases over time but

## has significant noise.

x = range(duration) y = [] yNow = 0

for i in x: nextDelta = random.normalvariate(meanIncrease,stDevIncrease) yNow += nextDelta y.append(yNow)

pylab.plot(x,y) pylab.xlabel(“Time”) pylab.ylabel(“Value”) pylab.savefig(“lineGraph.png”) pylab.show()

## References

[1] Ken Lambert, *Fundamentals of Python: First Programs*, 2012.