• 主页
  • 课程

    关于课程

    • 课程归档
    • 成为一名讲师
    • 讲师信息
    教学以及管理操作教程

    教学以及管理操作教程

    ¥1,000.00 ¥100.00
    阅读更多
  • 特色
    • 展示
    • 关于我们
    • 问答
  • 事件
  • 个性化
  • 博客
  • 联系
  • 站点资源
    有任何问题吗?
    (00) 123 456 789
    weinfoadmin@weinformatics.cn
    注册登录
    恒诺新知
    • 主页
    • 课程

      关于课程

      • 课程归档
      • 成为一名讲师
      • 讲师信息
      教学以及管理操作教程

      教学以及管理操作教程

      ¥1,000.00 ¥100.00
      阅读更多
    • 特色
      • 展示
      • 关于我们
      • 问答
    • 事件
    • 个性化
    • 博客
    • 联系
    • 站点资源

      R语言

      • 首页
      • 博客
      • R语言
      • ​【R案例分享】探索性数据分析

      ​【R案例分享】探索性数据分析

      • 发布者 weinfoadmin
      • 分类 R语言
      • 日期 2014年11月25日
      测试开头

      摘要

      探索性数据分析(EDA)是指对已有的数据(特别是调查或观察得来的原始数据)在尽量少的先验假定下进行探索,通过作图、制表、方程拟合、计算特征量等手段探索数据的结构和规律的一种数据分析方法。本文介绍了使用R语言对iris数据集进行探索性数据分析的过程和具体实现。

      【R语言】致力于传播R知识,包括【R每日一帖】、【R书籍推荐】、【R案例分享】。后续会推出【R那些事】、【R微课程】等栏目。在这大数据时代里,从数据中找出价值,既是机遇又是挑战。R语言可以帮助我们获取数据、处理数据、分析数据、展示数据和理解数据,以进行数据化决策!


      探索性数据分析(EDA)是指对已有的数据(特别是调查或观察得来的原始数据)在尽量少的先验假定下进行探索,通过作图、制表、方程拟合、计算特征量等手段探索数据的结构和规律的一种数据分析方法。

      EDA是二十世纪六十年代提出的,该方法由美国著名统计学家约翰.图基命名。EDA主要应用于对数据进行初步的分析,往往还无法进行常规的统计分析。

      EDA有以下特点。

      特点一:分析思路上让数据说话,不强调对数据的整理。EDA从原始数据出发,深入探索数据的内在规律,而不是从某种假定出发,套用理论结论,拘泥于模型的假设。

      特点二:EDA分析方法灵活,不拘泥于传统的统计方法。EDA处理数据的方式灵活多样,什么方法可以达到探索和发现的目的就使用什么方法。

      特点三:EDA分析工具简单直观,易于传播。EDA侧重于直观及数据可视化。

      我们知道EDA是什么,EDA有什么特点后,我们现在使用R语言来对Iris数据集进行探索性分析。

      Iris数据集简介

      Iris数据集包含5个变量,分别是Sepal.Length,Sepal.Width,Petal.Length,Petal.Width和Species,即萼片的长度、萼片的宽度、花瓣的长度、花瓣的宽度和种类,共有150个观测,3种分类(setosa,versicolor,virginica),每种分类有50个观测。

      Iris数据集是R自带的数据集,可以直接使用。

      关于iris数据集详细介绍,执行help(iris)或者?iris 即可。

      Iris数据集探索性分析

      第一步:检查维数

      >dim(iris)

      [1] 150 5

      第二步:变量名称或者列名称

      > names(iris)
      [1] "Sepal.Length" "Sepal.Width"  "Petal.Length" "Petal.Width"  "Species"   

      第三步:数据集的数据结构

      > str(iris)
      'data.frame':     150 obs. of  5 variables:
       $ Sepal.Length: num  5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
       $ Sepal.Width : num  3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
       $ Petal.Length: num  1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
       $ Petal.Width : num  0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
       $ Species     : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...

      第四步:数据集的attributes

      > attributes(iris)
      $names
      [1] "Sepal.Length" "Sepal.Width"  "Petal.Length" "Petal.Width"  "Species"     
       
      $row.names
        [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20
       [21]  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40
       [41]  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60
       [61]  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80
       [81]  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100
      [101] 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
      [121] 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
      [141] 141 142 143 144 145 146 147 148 149 150
       
      $class
      [1] "data.frame"

      第五步:获取数据集前6个观测

      > head(iris)
        Sepal.Length Sepal.Width Petal.Length Petal.Width Species
      1          5.1         3.5          1.4         0.2  setosa
      2          4.9         3.0          1.4         0.2  setosa
      3          4.7         3.2          1.3         0.2  setosa
      4          4.6         3.1          1.5         0.2  setosa
      5          5.0         3.6          1.4         0.2  setosa
      6          5.4         3.9          1.7         0.4  setosa

      或者

      > iris[1:6,]
        Sepal.Length Sepal.Width Petal.Length Petal.Width Species
      1          5.1         3.5          1.4         0.2  setosa
      2          4.9         3.0          1.4         0.2  setosa
      3          4.7         3.2          1.3         0.2  setosa
      4          4.6         3.1          1.5         0.2  setosa
      5          5.0         3.6          1.4         0.2  setosa
      6          5.4         3.9          1.7         0.4  setosa

      第六步:获取数据集后6个观测

      > tail(iris)
          Sepal.Length Sepal.Width Petal.Length Petal.Width   Species
      145          6.7         3.3          5.7         2.5 virginica
      146          6.7         3.0          5.2         2.3 virginica
      147          6.3         2.5          5.0         1.9 virginica
      148          6.5         3.0          5.2         2.0 virginica
      149          6.2         3.4          5.4         2.3 virginica
      150          5.9         3.0          5.1         1.8 virginica

      或者

      > count_end <- nrow(iris)
      > count_begin <- count_end -5
      > iris[count_begin:count_end, ]
          Sepal.Length Sepal.Width Petal.Length Petal.Width   Species
      145          6.7         3.3          5.7         2.5 virginica
      146          6.7         3.0          5.2         2.3 virginica
      147          6.3         2.5          5.0         1.9 virginica
      148          6.5         3.0          5.2         2.0 virginica
      149          6.2         3.4          5.4         2.3 virginica
      150          5.9         3.0          5.1         1.8 virginica

      第七步:获取前十个观测萼片长度

      > iris[1:10, names == "Sepal.Length"]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9
      或者
      > iris[1:10, "Sepal.Length"]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9
      或者
      > iris[1:10, 1]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9
      或者
      > iris[1:10, names(iris)[1]]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9
      或者
      > names <- names(iris)
      > iris[1:10, names == "Sepal.Length"]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9
      或者
      > iris$Sepal.Length[1:10]
       [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9

      第八步:每个变量的分布情况

      ​【R案例分享】探索性数据分析

      第九步:类别的频次

      > table(iris$Species)
       
          setosa versicolor  virginica 
              50         50         50 

      第十步:类别频次的饼状图

      > pie(table(iris$Species))

      ​【R案例分享】探索性数据分析

      第十一步:萼片长度的方差

      > var(iris$Sepal.Length)
      [1] 0.6856935

      第十二步:萼片长度和花瓣长度的协方差

      > cov(iris$Sepal.Length, iris$Petal.Length)
      [1] 1.274315

      第十三步:萼片长度和花瓣长度的相关系数

      > cor(iris$Sepal.Length, iris$Petal.Length)
      [1] 0.8717538

      第十四步:萼片长度的直方图

      > hist(iris$Sepal.Length)

      ​【R案例分享】探索性数据分析

      第十五步:萼片长度的密度曲线图

      > plot(density(iris$Sepal.Length))

      ​【R案例分享】探索性数据分析

      第十六步:散点图

      > attach(iris)
      > plot(Sepal.Length, Sepal.Width)
      > detach(iris)

      ​【R案例分享】探索性数据分析

      第十七步:矩阵散点图

      > plot(iris)
      或者
      > pairs(iris)

      ​【R案例分享】探索性数据分析

      【想一想】

      1 探索性数据分析怎么理解,具有什么特点,怎么应用?

      2 如何使用R语言进行探索性数据分析?

      ​【R案例分享】探索性数据分析

      ◆传播R知识

      【R语言】作为国内传播R知识的交流合作平台,它集R学习、实战、技术、培训、人才等功能为一体,帮助数以万计的朋友们使用好R,让R服务我们的工作和改善我们的生活。

      ◆互动交流

      我是陆勤,微信号:wangluqing360,你们在R路上的朋友,一起欣赏R路上的风景。PPV课R语言群:342699237,欢迎朋友们加入,共建最好的R社区。欢迎读者朋友们撰稿深度挖掘,回复消息给我留言或者邮件至1181906473@qq.com。

      ◆如何查看更多好文章

      查看【历史记录】

      ​【R案例分享】探索性数据分析

      测试结尾

      请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!

      • 分享:
      作者头像
      weinfoadmin

      上一篇文章

      【R每日一贴】R回归模型摘要理解?
      2014年11月25日

      下一篇文章

      【R每日一贴】R用多色画变量?
      2014年11月27日

      你可能也喜欢

      3-1665801675
      R语言学习:重读《R数据科学(中文版)》书籍
      28 9月, 2022
      6-1652833487
      经典铁死亡,再出新思路
      16 5月, 2022
      1-1651501980
      R语言学习:阅读《R For Everyone 》(第二版)
      1 5月, 2022

      搜索

      分类

      • R语言
      • TCGA数据挖掘
      • 单细胞RNA-seq测序
      • 在线会议直播预告与回放
      • 数据分析那些事儿分类
      • 未分类
      • 生信星球
      • 老俊俊的生信笔记

      投稿培训

      免费

      alphafold2培训

      免费

      群晖配置培训

      免费

      最新博文

      Nature | 单细胞技术揭示衰老细胞与肌肉再生
      301月2023
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      301月2023
      如何快速批量修改 Git 提交记录中的用户信息
      261月2023
      logo-eduma-the-best-lms-wordpress-theme

      (00) 123 456 789

      weinfoadmin@weinformatics.cn

      恒诺新知

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      链接

      • 课程
      • 事件
      • 展示
      • 问答

      支持

      • 文档
      • 论坛
      • 语言包
      • 发行状态

      推荐

      • iHub汉语代码托管
      • iLAB耗材管理
      • WooCommerce
      • 丁香园论坛

      weinformatics 即 恒诺新知。ICP备案号:粤ICP备19129767号

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      要成为一名讲师吗?

      加入数以千计的演讲者获得100%课时费!

      现在开始

      用你的站点账户登录

      忘记密码?

      还不是会员? 现在注册

      注册新帐户

      已经拥有注册账户? 现在登录

      close
      会员购买 你还没有登录,请先登录
      • ¥99 VIP-1个月
      • ¥199 VIP-半年
      • ¥299 VIP-1年
      在线支付 激活码

      立即支付
      支付宝
      微信支付
      请使用 支付宝 或 微信 扫码支付
      登录
      注册|忘记密码?