教程|R语言学习与实践教程
编者按:五一节,祝大家节日快乐,心想事成。我创建了R语言微信群,定位:R语言学习与实践,要进群的朋友,添加我微信:luqin360。
本文的外部链接,请点击阅读原文进入到数据人网后,就可以访问和查看了。
在这个内核中,我收集了我所写的所有R语言教程,按级别划分。
-
初学者:在这个级别,我假设你没有编程背景或刚刚开始使用R.
-
中级:在这个级别,我假设您熟悉如何使用R的基础知识,但仍然熟悉语法。
-
高级:在这个级别,我认为你很乐意编写R代码来工作(虽然你可能仍然需要查看:)并且正在寻找有关特定任务的材料。
愿您喜欢。——Rachael
初学者
在这个层次上,我假设您要么没有编程背景,要么刚刚开始学习R。
开始学习R
主题:使用R编程的介绍
内容包括:
-
基本编程概念:函数,变量,数据类型和向量
-
将数据加载到R中
-
概括您的数据
-
图形化数据并保存图表
如果您对R或编程完全陌生,那么这是一个很好的起点。 我们从完整的基础知识开始,每个笔记本包括一个任务,有很多机会练习应用您学到的知识。
使用Tidyverse操作数据
主题:在本教程中,您将学习如何使用Tidyverse软件包集合来与您的数据进行交互。
内容包括:
-
使用管道(%>%)创建无缝工作流程
-
使用select()选择一列或多列
-
使用filter()选择一行或多行
-
使用mutate()添加新变量
-
使用arrange()更改行的顺序
-
使用summarize()将变量转换为单个值
-
使用group_by()对观察集进行分组
Tidyverse包的集合是我在R生态系统中绝对最喜欢的工具,我无法想象没有它们就能尝试工作。 (或者说,我可以,但我不愿意。)在本教程中,我将向您介绍一些最常用的功能。
使用ggplot2可视化数据
主题:在R中创建图形。
内容包括:
-
GGplot2语法
-
散点图
-
barplots
-
线图
Ggplot2非常强大,但它可能需要一点时间习惯。 本教程将帮助您学习ggplot2。 我们将使用三种最常用的绘图技术,使用真实数据制造出可出版的图形。
5天数据挑战
主题:数据科学入门
语言:Python和R.
每天的任务:
-
第1天:将数据读入内核
-
第2天:使用直方图绘制数值变量
-
第3天:进行t检验
-
第4天:使用条形图显示分类数据
-
第5天:使用卡方检验
数据科学新手? 需要快速复习? 这五天的挑战将为您提供启动数据科学之旅所需的指导和支持。
当您完成此挑战时,您将:
-
读入并汇总数据
-
可视化数字和分类数据
-
知道何时以及如何使用两个基础统计检验(t检验和卡方检验)
这项挑战的所有材料都在一个Notebook中。
中级
在这个级别上,我假设您已经熟悉了如何使用R的基本知识,但是仅对语法比较熟悉。
欢迎来到R的数据科学
主题:介绍机器学习。 在本教程结束时,您将学习两种机器学习模型,并对机器学习工作流程有基本的了解。
内容涵盖:
-
模型如何运作
-
开始机器学习项目
-
运行你的第一个模型
-
怎么知道我们的模型是否好?
-
欠拟合/过度拟合并改进您的模型
-
一个不同类型的模型:随机森林
一旦你已经准备好进入机器学习,这是一个很好的第一步。
5天数据挑战:回归
主题:回归,统计和机器学习中的一项基本任务,可以让您量化变量之间的关系。
每天的任务:
-
第1天:了解不同类型的回归(泊松,线性和逻辑)以及何时使用它们
-
第2天:了解如何使用诊断图拟合和评估模型
-
第3天:学习如何阅读和理解模型
-
第4天:学习如何拟合和解释多元回归模型
-
第5天:了解如何使用Elastic Net选择输入变量
当您完成此挑战时,您将了解如何以及何时实施三种基本回归技术。 每天我们将深入介绍回归分析的一个方面。
5天数据挑战:数据清洗
主题:数据清洗,或在使用数据进行训练或评估机器学习模型之前如何准备数据。
每天的任务:
-
第1天:读取常见的数据文件格式:.json,.txt和.xlsx
-
第2天:填写缺失值
-
第3天:识别和处理异常值
-
第4天:删除重复记录
-
第5天:清洗数字(百分比,金钱,日期和时间)
数据清洗是数据科学的必要组成部分,但它可能会令人非常沮丧。 你应该怎么做这个.json文件? 如何处理数据中的所有缺失值? 有没有一种快速的方法来摆脱重复的条目? 在这个挑战中,我们将学习如何解决一些常见的数据清洗问题。
如何通过可视化发现数据中的故事
主题:此笔记本将帮助您开始直观地探索数据。
内容包括:
-
设置笔记本环境
-
ggplot简介
-
单变量(一个变量)可视化
-
直方图
-
盒子和胡须图
-
时间序列
-
解析日期
-
绘制时间序列
-
多变量(多个变量)图
-
Corellelogram
-
散点图,(包括添加类似和刻面)
-
映射空间数据
这个notebook涵盖了很多可视化效果; 我的意图是让你很好地理解代码,复制并粘贴它并根据自己的需要进行编辑。
高级
在这个级别上,我假设您能够轻松地编写代码来使用R进行工作(尽管您可能仍然需要查找:),并且正在寻找关于特定任务的材料。
使用XGBoost进行机器学习
主题:本教程介绍了R中流行的XGBoost算法。
内容包括:
-
XGBoost是什么
-
如何准备您的数据
-
如何使用XGBoost训练和调整模型
-
如何可视化和探索您的模型
XGBoost是我的首选机器学习算法之一,本教程将引导您逐步使用它。
用Caret挑选最佳模型
主题:超参数调整和模型比较。
内容包括:
-
如何准备您的数据
-
如何训练基准模型
-
如何使用caret训练调整模型
-
如何比较模型
但是你怎么知道你的模型是否是最好的?您可以尝试改进模型的一种方法是通过超参数调整。
超参数:超参数是模型中的“设置”。超参数将特别取决于您正在训练的模型类型。超参数的一些示例包括XGBoost中的训练轮数或神经网络中的学习速率。在R中,如果你没有指定你应该使用哪些特定的超参数,那么你的模型将使用你用来训练模型的任何函数指定的默认超参数进行训练 – 它们可能不适合你的具体问题。
使用Notebooks进行仪表板操作
主题:使用笔记本构建交互式仪表板。
内容包括:
-
第1天:使用仪表板确定应监控哪些信息
-
第2天:如何在笔记本中创建有效的仪表板
-
第3天:使用Kaggle API运行笔记本
-
第4天:使用云服务计划笔记本运行
-
第5天:测试和验证
本教程还介绍了如何安排Notebooks,使其每天自动更新一次。
可重复的研究最佳实践
主题:这里的“再现性”是指在给定相同数据的情况下精确重新创建早期分析的能力
内容包括:
-
第0步:组织和规划您的项目
-
数据:格式化和记录数据,以便于使用和重复使用
-
代码:让您的代码易于让其他人(或您将来)运行和理解
-
计算环境:标准化运行代码的计算环境,以确保输出一致
您可以将再现性视为一种范围:使用您提供的资源获得相同结果所花费的时间越少,您的工作就越可重复。重现研究项目的时间可以从几个月(如果您需要从头开始重建项目)到几秒钟(如果原始研究人员提供可执行代码和运行它的环境)。我的目标是让你更接近“秒”,并远离“月”。
R的Ridgeplots
主题:在R中创建ridgeplot可视化
内容包括:
-
格式化数据
-
绘图ridgeplots
本教程将向您展示如何使用ridgeplots。 Ridgeplots是一个非常好的可视化,它允许您分开数据集并绘制因子的密度,但是在同一轴上。 如果您想避免为每个级别的因子绘制一个新面板但仍希望直接将它们相互比较,这将特别有用。
在R内核用Reticulate使用Python
主题:在同一个内核中使用R&Python
内容包括:
-
使用Python函数
-
导入Python库
这是一个非常简短的内核,向您展示了在R中使用Python的语法。
删除有影响的点(异常值)
主题:使用Cook的距离去除异常值。
内容包括:
-
确定有影响力的要点
-
删除它们
这是一个非常简短的教程,用于删除可能会使您的回归倾斜的具有高库克距离的点。
原文链接:
https://www.kaggle.com/rtatman/rachael-s-r-tutorials
您若是觉得有用,请点赞和分享给朋友或者同事。
您有任何问题或者想法,请留言或者评论。
我是王路情,专注于从数据中学习。我们创建数据人网http://shujuren.org,它是数据人的家园,一个数据人学习,交流和分享的场所。欢迎您,大家一起来创造和分享数据知识,共建和共享数据智库,为智能化社会助力。
内容推荐
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!