“R:简单计算”的版本间的差异

来自OBHRM百科
跳转至: 导航搜索
计算维度分数
 
第2行: 第2行:
 
如果您有一个数据框mydata,里面有变量item1, item2,现在你想创建一个新变量itemsum(两个变量的和),itemmean(两个变量的均值)。
 
如果您有一个数据框mydata,里面有变量item1, item2,现在你想创建一个新变量itemsum(两个变量的和),itemmean(两个变量的均值)。
  
如果您做这样做,<b><font color="red">不对!! </font></b>
+
如果您这样做,<b><font color="red">不对!! </font></b>
 
  itemsum <- item1 + item2        # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向
 
  itemsum <- item1 + item2        # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向
 
  itemmean <- (item1 + item2)/2    # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向
 
  itemmean <- (item1 + item2)/2    # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向
如果您做这样做,<b><font color="red">还是不对!! </font></b>
+
如果您这样做,<b><font color="red">还是不对!! </font></b>
 
  itemsum <- mydata$item1 + mydata$item2        # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
 
  itemsum <- mydata$item1 + mydata$item2        # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
 
  itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
 
  itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
如果您做这样做,<b><font color="blue">恭喜您,操作正确!! </font></b>
+
如果您这样做,<b><font color="blue">恭喜您,操作正确!! </font></b>
 
  #方法1
 
  #方法1
  mydata$itemsum <- mydata$item1 + mydata$item2        # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
+
  mydata$itemsum <- mydata$item1 + mydata$item2        # 告诉R,item1与item2来自mydata,结果也保存到mydata
  mydata$itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
+
  mydata$itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,结果也保存到mydata
  
 
  #方法2
 
  #方法2

2017年3月9日 (四) 13:47的最新版本

基本规则

如果您有一个数据框mydata,里面有变量item1, item2,现在你想创建一个新变量itemsum(两个变量的和),itemmean(两个变量的均值)。

如果您这样做,不对!!

itemsum <- item1 + item2         # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向
itemmean <- (item1 + item2)/2    # 没有告诉R,item1与item2来自哪个数据框,R就会迷失方向

如果您这样做,还是不对!!

itemsum <- mydata$item1 + mydata$item2         # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。
itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,但结果保存到哪?R不知道。

如果您这样做,恭喜您,操作正确!!

#方法1
mydata$itemsum <- mydata$item1 + mydata$item2         # 告诉R,item1与item2来自mydata,结果也保存到mydata
mydata$itemmean <- (mydata$item1 + mydata$item2)/2    # 告诉R,item1与item2来自mydata,结果也保存到mydata
#方法2
attach(mydata)                          # 激活mydata,接下来R就会使用这个数据框中的变量
mydata$itemsum <- item1 + item2         # 告诉R,结果保存到mydata中的itemsum变量
mydata$itemmean <- (item1 + item2)/2    # 告诉R,结果保存到mydata中的itemmean变量
detach(mydata)
#方法3
mydata <- transform (mydata, itemsum=item1+item23, itemmean=(item1+item2)/2)    # 借助transform()函数完成计算

计算维度分数

如果您有一个数据框mydata,数据框里头有变量item1,item3,item8,item20,这四道题测量的是同一个维度,需要计算维度的得分。在计算前,请先将该维度反向计分题目进行相应的调整,然后采用以下方法计算维度得分。

# 用rowMeans计算维度得分,维度名称ee
mydata$ee<- rowMeans(mydata[c("item1","item3","item8","item20")],na.rm=TRUE)  # 使用的是rowMeans函数。注意后面的na.rm=TRUE,这样万一四道题有人只填写了三道题,就会只计算三道题的平均值。