In [2]:
using DataFrames
using RDatasets
In [3]:
diamond = dataset("Ecdat", "Diamond")
head(diamond, 5)
Out[3]:
In [4]:
describe(diamond)
In [5]:
using Gadfly
In [6]:
diamond[:AdjustedPrice] = diamond[:Price] / 1000;
In [67]:
plot(diamond, x = "AdjustedPrice", y = "Carat",
color = "Colour", Geom.point)
Out[67]:
In [70]:
plot(diamond, x = "AdjustedPrice", y = "Carat", Geom.point,
layer(x = "AdjustedPrice", y = "Carat", Geom.smooth, Theme(default_color=colorant"red")))
Out[70]:
In [60]:
plot(diamond, x = "Clarity", y = "AdjustedPrice", Geom.boxplot, Guide.title("My plot"), Theme(default_color = colorant"green", boxplot_spacing = 50px))
Out[60]:
In [55]:
plot(diamond, x = "Colour", y = "AdjustedPrice", Geom.boxplot, Guide.title("My plot"), Theme(default_color = colorant"purple", boxplot_spacing = 50px))
Out[55]:
In [62]:
plot(diamond, x = "Price", Geom.density)
Out[62]:
In [11]:
hstack(plot(diamond, layer(x = "Certification", y = "Carat", Geom.point, Theme(default_color=colorant"red"))),
plot(diamond, layer(x = "Certification", y = "AdjustedPrice", Geom.point, Theme(default_color=colorant"navy"))),
plot(diamond, layer(x = "Clarity", y = "Carat", Geom.point, Theme(default_color=colorant"green"))),
plot(diamond, layer(x = "Clarity", y = "AdjustedPrice", Geom.point, Theme(default_color=colorant"yellow"))))
Out[11]:
In [28]:
using Vega
In [29]:
ColourDF = by(diamond, :Colour, nrow)
Out[29]:
In [30]:
ClarityDF = by(diamond, :Clarity, nrow)
Out[30]:
In [31]:
x1 = Array(ColourDF[:Colour])
y1 = Array(ColourDF[:x1])
x2 = Array(ClarityDF[:Clarity])
y2 = Array(ClarityDF[:x1])
Patchwork.load_js_runtime()
pie1 = piechart(x = x1, y = y1, holesize = 75)
pie2 = piechart(x = x2, y = y2, holesize = 75);
In [33]:
pie1
Out[33]:
In [34]:
pie2
Out[34]:
In [35]:
using GLM, Distributions;
In [36]:
lm1 = fit(LinearModel, Price ~ Carat, diamond)
Out[36]:
In [37]:
confint(lm1)
Out[37]:
In [38]:
lm2 = fit(LinearModel, Price ~ Carat + Colour + Clarity + Certification, diamond)
Out[38]:
In [39]:
GLM1 = glm(Carat ~ AdjustedPrice, diamond, Normal(), IdentityLink())
Out[39]:
In [40]:
stderr(GLM1)
Out[40]:
In [41]:
GLM1Fit = predict(GLM1);
size(GLM1Fit)
Out[41]:
In [42]:
diamond[:GLM1Fit] = GLM1Fit;
head(diamond, 10)
Out[42]:
In [52]:
plot(diamond, layer(x = "Carat", y = "AdjustedPrice", Geom.point, Theme(default_color=colorant"blue")),
layer(x = "GLM1Fit", y = "AdjustedPrice", Geom.line, Theme(default_color=colorant"red")))
Out[52]: