大数据分析 - 数据探索


探索性数据分析是 John Tuckey (1977) 提出的概念,它基于统计学的新视角。塔基的想法是,在传统统计学中,数据并没有以图形方式进行探索,而只是用于检验假设。开发工具的第一次尝试是在斯坦福大学完成的,该项目被称为prim9。该工具能够在九个维度上可视化数据,因此能够提供数据的多变量视角。

近年来,探索性数据分析是必须的,并且已被纳入大数据分析生命周期。强大的 EDA 能力可以增强在组织中发现洞察力并有效沟通的能力。

基于塔基的想法,贝尔实验室开发了S编程语言,以提供用于统计的交互界面。S 的想法是通过易于使用的语言提供广泛的图形功能。当今世界,在大数据的背景下,基于S编程语言的R是最流行的分析软件。

顶级分析包

以下程序演示了探索性数据分析的使用。

以下是探索性数据分析的示例。此代码也可在part1/eda/exploratory_data_analysis.R文件中找到。

library(nycflights13) 
library(ggplot2) 
library(data.table) 
library(reshape2)  

# Using the code from the previous section 
# This computes the mean arrival and departure delays by carrier. 
DT <- as.data.table(flights) 
mean2 = DT[, list(mean_departure_delay = mean(dep_delay, na.rm = TRUE), 
   mean_arrival_delay = mean(arr_delay, na.rm = TRUE)), 
   by = carrier]  

# In order to plot data in R usign ggplot, it is normally needed to reshape the data 
# We want to have the data in long format for plotting with ggplot 
dt = melt(mean2, id.vars = ’carrier’)  

# Take a look at the first rows 
print(head(dt))  

# Take a look at the help for ?geom_point and geom_line to find similar examples 
# Here we take the carrier code as the x axis 
# the value from the dt data.table goes in the y axis 

# The variable column represents the color 
p = ggplot(dt, aes(x = carrier, y = value, color = variable, group = variable)) +
   geom_point() + # Plots points 
   geom_line() + # Plots lines 
   theme_bw() + # Uses a white background 
   labs(list(title = 'Mean arrival and departure delay by carrier', 
      x = 'Carrier', y = 'Mean delay')) 
print(p)  

# Save the plot to disk 
ggsave('mean_delay_by_carrier.png', p,  
   width = 10.4, height = 5.07)

该代码应生成如下所示的图像 -

平均延误