Search code examples
rpipingmagrittr

How to string two functions in R with an exposition piping (%$%) operator


I want to combine these two functions:

`dataframe %$%
  t.test(vector1, vector2, paired = T)
 dataframe %$%
  cohen.d.(vector1, vector2, paired = T)`

into something that requires the data.frame only once like this:

`dataframe %$%
  t.test(vector1, vector2, paired = T)
  cohen.d.(vector1, vector2, paired = T)`

Solution

  • Just make a list with the two things in it:

    attitude %$% list(t.test(rating, complaints), cohen.d(rating, complaints))
    [[1]]
    
            Welch Two Sample t-test
    
    data:  rating and complaints
    t = -0.5970993, df = 57.53962, p-value = 0.5527835
    alternative hypothesis: true difference in means is not equal to 0
    95 percent confidence interval:
     -8.560849235  4.627515902
    sample estimates:
      mean of x   mean of y 
    64.63333333 66.60000000 
    
    
    [[2]]
    
    Cohen's d
    
    d estimate: -0.1541703764 (negligible)
    95 percent confidence interval:
              inf           sup 
    -0.6717788229  0.3634380702