R数据科学-1(dplyr)

简介: R数据科学-1(dplyr)

R数据科学(dplyr)

如今数据分析如火如荼,R与Python大行其道。你还在用Excel整理数据么,你还在用spss整理数据么。

 

数据分析的基础:Data Clean

数据清洗是数据处理的必备工作,而且往往需要花费大量时间去整理,去提取想要的数据,因为画图,报表都需要特定格式的数据。

EXCEL缺点:

· 数据粘贴复制,导致存在很多副本,更改都不知道原来数据有没有被改动

· 数据排序,计算,鼠标点击,容易误操作。

· 忘记保存,白费时间

· 效率低,时间长

现在,我们将学习对处理数据有用的两个软件包:

1. dplyr是用于简化表格数据操作的软件包。

2. tidyr使您可以在不同的数据格式之间快速转换。

两个软件包中的命令都可以与管道函数(%>%)很好地配合使用,这可以使代码更具可读性。详细内容可参考Cheatsheet手册。

image.png

image.png

image.png

1.数据框格式(DataFrame)

一般,我们的excel包括行(col)与列(row),在R语言中,经常对excel操作的对象称之为Dataframe,那么在进行数据查看时候,R语言可以看到数据结构。但是往往会打印出来很长,tidyr中的tibble就解决了此问题,直接简单的看到数据结构及变量类型。

class(mtcars)可以查看数据的类型,为"data.frame";mtcars就可以看到全部的数据了。但是如果数据太多,那么就很不方便。

head(mtcars),可以看到数据的前面6行,属于数据的一个预览。但是看不到各个列的属性。

%>%管道函数,其实就是将f()写在了数据的后面,下面示例的两个操作,都得到df,效果一样。只不过 %>%看起来更简单,将mtcars赋予新的tibble。

df以后的输出,很简洁,能看到32*11的数据行与列,也能看到各列的属性。一目了然

image.png

image.png

2.数据-变量提取及产生

我们经常会用到,只需要里面的几个变量,不是所有的变量都输出。那么就涉及到变量的提取。就会用到select函数,可以提取需要的变量。有一个好处就是,不修改原是数据。

那如果新产生一个变量mpg1=mpg,或者new=mpg*cyl,就用到mutate函数,产生新变量。

image.png

3.数据-变量条件筛选

dplyr::filter()函数对上述新产生的变量的数据df,进行筛选。只要符合am=1给提取出来,或者对符合am=1,gear=4条件的输出。

image.png

5.数据分组计算

有时候,需要分组计算均值标准差,或者看gear不同水平下的最大值最小值,那么就用到group_by()与 summarise() 函数。
譬如,对不同gear计算mpg的均值及标准差。或者根据am及gear分组计算mpg均值标注差。

image.png

6.数据转换

有时候,处理数据时候,需要对变量类型进行转换,譬如字符串,因子及数值类型相互转换,上述数据里面dbl 意思是数值类型(double class)我们现在产生新的字符串chr及因子fct。使用mutate函数。可以看到mpg1与new都变成了chr与fct。

提取new,看一下。

image.png

有时候,会需要将连续性的变量,转换成分类变量。这时候就需要用到ifelse函数(转换成二分类变量),或者cut函数转换成多类别变量。代码如下 image.png

目录
相关文章
|
10月前
|
存储 Serverless
哈希冲突
哈希冲突可通过优化哈希函数或采用冲突解决策略应对。开放寻址法通过线性、二次探查或双散列寻找空位,但易导致聚集,影响效率;链表法则在冲突位置构建链表,避免抢占,更适应动态数据,是常用方案之一。
|
监控 安全 Devops
阿里云容器服务飞天敏捷版详解
阿里云容器服务提供了公共云、专有云以及飞天敏捷版三种部署形态,全方位地满足企业客户利用CaaS(Container as a Service)进行应用现代化上云的需求。飞天敏捷版包含了阿里在公有云上的最佳实践和Docker企业版的安全能力,打造企业一体化化的本地容器云平台方案。
28017 1
|
8月前
|
机器学习/深度学习 编解码 人工智能
从 Genie 2 到 Genie 3:一年间世界模型发生了什么
2024–2026年,Google DeepMind的Genie系列从2D概念验证(Genie 1)跃升至3D可交互世界(Genie 2),再进化为支持自然语言事件调控、多模态输入与分钟级记忆的Genie 3;2026年1月以Project Genie正式商用,标志世界模型迈入实用化新阶段。
739 2
|
10月前
|
边缘计算 监控 网络协议
网络延迟优化方案
本文系统阐述网络延迟优化全方案,涵盖架构设计、协议调优、全球加速等十大维度,结合实战案例与最佳实践,助力构建低延迟、高稳定网络体系。
1445 0
|
移动开发 自然语言处理 Linux
Python中r前缀:原始字符串的魔法解析
本文深入解析Python中字符串的r前缀(原始字符串)的设计原理与应用场景。首先分析传统字符串转义机制的局限性,如“反斜杠地狱”问题;接着阐述原始字符串的工作机制,包括语法定义、与三引号结合的用法及特殊场景处理。文章重点探讨其在正则表达式、文件路径和多语言文本处理中的核心应用,并分享动态构建、混合模式编程等进阶技巧。同时纠正常见误区,展望未来改进方向,帮助开发者更好地理解和使用这一特性,提升代码可读性和维护性。
876 0
|
12月前
|
存储 缓存 安全
JUC系列之《volatile关键字:穿透Java内存模型的可见性之剑》
本文深入解析Java中的`volatile`关键字,涵盖其核心特性(可见性与有序性)、底层原理(JMM与内存屏障)、典型使用场景(状态标志、单例模式)及局限性(不保证原子性),帮助开发者正确掌握这一轻量级同步工具,避免并发编程误区。
|
11月前
|
人工智能 供应链 大数据
保理公司推荐指南:2025年十大品牌盘点,聚焦海尔金融保理的核心优势
海尔金融保理凭借强大股东背景、12亿注册资本及“海创云链”科技平台,融合大数据、AI、区块链等技术,实现全流程线上化风控与放款。其“金融+科技+产业”模式深度服务中小微企业,覆盖全国29省市,累计投放超560亿元,获监管A级评定与多项创新奖项,位居2025年保理公司榜首,为供应链金融提供高效、智能的综合解决方案。
1204 0
|
人工智能 前端开发 架构师
2025年前端局势分析,我该不该转行?
2024年,前端领域经历了快速变化,AIGC的兴起和市场HC减少使得前端工程师面临挑战。尽管AI工具如通义灵码和Cursor能高效生成代码,但AI无法完全取代前端工程师,因其缺乏逻辑、沟通和创新能力。前端工作不仅限于编码,还包括需求分析、代码评审等。未来,前端不会“死亡”,而是持续演变。面对大环境的压力,提升综合能力、拥抱变化、持续学习和保持身心健康是关键。转型方向包括升管理、做架构师或转讲师等。稳住2025年,需适应变化、不断学习并探索更多可能性。
3120 16