Everything can be found on Google
Groupby then plot
df.groupby('type').apply(lambda x: plt.hist(x['price'] ,alpha=0.75, weights=np.ones_like(x['price']) / len(x['price']),bins=np.arange(0.5e6, 5e6, 0.1e6)) )
\#Eli filtered out results where condos cost more than $5m.
Some Logarithm Rules
if and only if a=b, log(a)=log(b)
if and only if a>b, log(a)>log(b)
log(a)+log(b)=log(a*b)
log(a)-log(b)=log(a/b) [We will use this for the analysis below]
log(a^m)=mlog(a)
In graphs, if y1>y2>y3, then log(y1)>log(y2)>log(y3).
If we are looking at equally spaced apart results on log scale, i.e. log(y1)-log(y2)=log(y2)-log(y3),
Then log(y1/y2)=log(y2/y3), which means y1/y2=y2/y3 [As above]
So, if y1/y2 is 2, then y2/y3=2
Caveats of log-transformation: log(0) is not defined.
As a matter of fact, log(a) is not defined for any a<=0
Additional challenge: if y1/y2=3, what is y1/y3, given the "equally space on log scaled chart" situation.
Cindy is a really nice and cute little student, except when she's with Alyssa