In [1]:
ENV["LINES"] = 10
ENV["COLUMNS"] = 60;
In [2]:
using DataFrames
benchmark = readtable(joinpath("data","benchmark.csv"), separator=';')
Out[2]:
In [3]:
longformat = melt(benchmark, [:Benchmark]) # Reshaping: wide -> long
Out[3]:
In [4]:
meantime = by(longformat, :variable, df -> mean( df[:value] )) # Split-Apply-Combine
Out[4]:
In [5]:
sort!(meantime, cols=[:x1]) # Sorting
names!(meantime, [:Lenguaje, :Tiempo_Medio])
Out[5]:
Descripción (estadística) del dataset (columnas), similar a summary
de R.
In [6]:
describe(meantime)
In [8]:
using RCall
In [9]:
ks = R"""ks.test($(benchmark[:Julia]), $(benchmark[:R]))"""
Out[9]:
In [10]:
rcopy(ks) # Transforma los datos de R a tipos de datos de Julia
Out[10]:
In [12]:
using HypothesisTests
In [13]:
ApproximateTwoSampleKSTest(benchmark[:Julia], benchmark[:R])
Out[13]:
In [14]:
SignedRankTest(
convert(Vector{Float64}, benchmark[:Julia]),
convert(Vector{Float64}, benchmark[:R])
) # Wilcoxon signed rank test
Out[14]:
In [16]:
using GLM
lineal = lm(@formula(R ~ Julia), benchmark)
Out[16]:
In [17]:
inter, pend = coef(lineal)
Out[17]:
In [22]:
using Plots, StatPlots
In [24]:
scatter(benchmark[:Julia], benchmark[:R], legend=false, xlab="Julia", ylab="R")
Plots.abline!(pend, inter)
Out[24]:
In [25]:
using Distributions
β = rand(Beta(2,2), 1000)
Out[25]:
In [27]:
# R"""
# install.packages("modeest")
# """
@rimport modeest as rmode
β_mode = rmode.hsm(β) # half-sample mode
Out[27]:
In [28]:
rcopy(β_mode)
Out[28]:
In [29]:
iris = readtable(joinpath("data", "iris.csv"))
Out[29]:
In [31]:
using Clustering
cl = kmeans(convert(Matrix{Float64}, iris[:, [:PetalWidth, :PetalLength]])', 3)
Out[31]:
In [32]:
cl.centers'
Out[32]:
In [33]:
by(iris, :Species, df -> (mean(df[:PetalWidth]), mean(df[:PetalLength])))
Out[33]: