R数据分析:如何在R中使用mutate

74 篇文章 318 订阅

 

因为最近搞毕业论文,有点忙,加上还有好多粉丝咨询,临近毕业更新就很少了。

今天就写一个非常简单的文章,敷衍一下吧,哈哈哈。

今天要写的就是数据清洗的函数mutate(),这个属于超级基本的内容哦,一般我们拿到数据最头疼应该就是清洗数据了,所以清洗数据的基础一定要牢牢掌握。

还有,如果你想成为一名合格的分析师,其实你只要精通清洗数据就够了,我这么说一点都不夸张。

 

一个简单数据清洗任务常常包括:

  • 从数据中选择列
  • 设置数据行
  • 汇总数据
  • 汇总数据(计算汇总统计信息)
  • 排序数据
  • 创建新变量

本文就只写最后一个,即在R中使用mutate创建新变量。

mutate的基础知识

在开始之前,我们先谈谈dplyr。

dplyr是R中专门用于数据处理的包。更具体功能包括:

  • select() 从数据中选择列
  • filter() 数据行的子集
  • group_by() 汇总数据
  • summarise() 汇总数据(计算汇总统计信息)
  • arrange() 排序数据
  • mutate() 创建新变量

在大多数情况下,dplyr仅执行这些任务。dplyr出色的部分原因在于它“紧凑”。只有5或6种主要工具,并且非常易于使用。

mutate()如何用?

使用时,通常你只需要指定3项内容:

  • 您要修改的数据框的名称
  • 您将创建的新变量的名称
  • 您将分配给新变量的值

还是给大家举个例子:看下图,mutate()的第一个参数就是数据框,然后就是新变量名=旧变量的某种新式。就是说你可以轻松地以数据框中的原有变量生成新变量。

 

但是这个函数只能用于数据框,不能在列表,矩阵,向量或其他数据结构中使用。

注意,mutate()的第二个参数是“名称-值”对,就是说我们在创建变量时新变量需要一个名称,但是它也需要一个分配给该名称的值。因此,当使用mutate时,您需要提供名称和新值…即名称/值对。

我们再次看一下刚刚的语法示例:

 

那么在上图中我们是要创建一个名为new_variable的新变量。分配给new_variable的值为existing_var乘以2的值。在此示例中,变量existing_var为原本就存在于数据框df当中的。

就是这么简单。

实例操作

为了加深大家的印象,还是给大家一个实例

library(dplyr)
library(ISLR)

我们使用ISLR包中的Auto数据框给大家演示。

在我们对数据进行实际操作之前,让我们先瞅一瞅它长啥样。

print(Auto)

 

打印出来时,您会发现数据数据框排列的有些杂乱,我们可以将它转化为tibble打印效果更好。tibble实际上修改后的数据框。它的优点之一是它们以更好的格式打印出来。

auto_specs <- as.tibble(Auto)
print(auto_specs)

 

这样好多了。

您可以看到,当我们现在打印出来时,tibble结构更具可读性。

好了。比如我现在需要一个新变量叫做hp_to_weight,这个变量是原先horsepower / weight两个变量的比值,我们就可以用使用mutate()写出如下代码:

auto_specs_new <- mutate(auto_specs, hp_to_weight = horsepower / weight)
print(auto_specs_new)

 

可以看到新的变量已经在auto_specs_new这个数据框中了。在R中使用mutate()就是这么简单。

小结

今天给大家写了mutate()如何创建新变量,超级简单的一个教程,感谢大家耐心看完,自己的文章都写的很细,代码都在原文中,希望大家都可以自己做一做,请关注后私信回复“数据链接”获取所有数据和本人收集的学习资料。如果对您有用请先收藏,再点赞转发。

也欢迎大家的意见和建议。

如果你是一个大学本科生或研究生,如果你正在因为你的统计作业、数据分析、论文、报告、考试等发愁,如果你在使用SPSS,R,Python,Mplus, Excel中遇到任何问题,都可以联系我。因为我可以给您提供好的,详细和耐心的数据分析服务。

如果你对Z检验,t检验,方差分析,多元方差分析,回归,卡方检验,相关,多水平模型,结构方程模型,中介调节,量表信效度等等统计技巧有任何问题,请私信我,获取详细和耐心的指导。

If you are a student and you are worried about you statistical #Assignments, #Data #Analysis, #Thesis, #reports, #composing, #Quizzes, Exams.. And if you are facing problem in #SPSS, #R-Programming, #Excel, Mplus, then contact me. Because I could provide you the best services for your Data Analysis.

Are you confused with statistical Techniques like z-test, t-test, ANOVA, MANOVA, Regression, Logistic Regression, Chi-Square, Correlation, Association, SEM, multilevel model, mediation and moderation etc. for your Data Analysis...??

Then Contact Me. I will solve your Problem...

加油吧,打工人!

猜你喜欢:

R数据分析:有调节的中介

R数据分析:中介效应的做法

R数据分析:中介作用与调节作用的分析与解释

R数据分析:混合效应模型实例

重复测量数据分析系列:混合效应模型基础

R数据分析:如何计算问卷的聚合效度,实例操练

R数据分析:如何计算问卷的组合信度,实例操练

  • 28
    点赞
  • 157
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

公众号Codewar原创作者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值