In my case I had to parse an XML first, I used BeautifulSoup4 for that. To format the data the way I needed, I stumbled across a gorgeous feature of Python’s .zip() function. Of course it lets you do what you expect it to do:

``````a = [1, 2, 3]
b = ["a", "b", "c"]
zip(a, b)
# >>> [(1, 'a'), (2, 'b'), (3, 'c')]
``````

Here is what kept my code short and concise:

``````x_y_parameters = [[1, 'a'], [2, 'b'], [3, 'c']]
x, y = zip(*x_y_parameters)
# >>> x
# (1, 2, 3)
# >>> y
# ('a', 'b', 'c')
``````

Now, on to SciPy’s linear regression (at least)! Taken straight from the docs. `pip install scipy` - you need that package

``````from scipy import stats
import numpy as np
x = np.random.random(10)
y = np.random.random(10)
slope, intercept, r_value, p_value, std_err = stats.linregress(x, y)
``````

Using a sexy list comprehension lets you use all results of the regression in an instance. Just one little thing to watch out is there though. `stats.linregress(x, y)` may need numpy formatted Lists/Arrays as input - this short note may keep your sanity at level one day.