[R] how to find the table in R studio

Jeff Newmiller jdnewm|| @end|ng |rom dcn@d@v|@@c@@u@
Wed Jan 12 21:34:25 CET 2022


Definitely avoid the assign solution... remembering side effects on the global environment is hard and difficult to troubleshoot, and that also makes "doing that many times" unreasonably difficult. IMO even mentioning such an alternative is a dangerous distraction.

I also would advocate not mixing the act of obtaining a result with the act of displaying it (e.g. the view function). A three line script (input, analysis, output) is always easier to adapt to answer new questions than a one-line script is, and is arguably even more understandable.

On January 12, 2022 12:22:00 PM PST, Duncan Murdoch <murdoch.duncan using gmail.com> wrote:
>On 12/01/2022 3:07 p.m., Kai Yang via R-help wrote:
>> Hi all,
>> I created a function in R. It will be generate a table "temp". I can view it in R studio, but I cannot find it on the top right window in R studio. Can someone tell me how to find it in there? Same thing for f_table.
>> Thank you,
>> Kai
>> library(tidyverse)
>> 
>> f1 <- function(indata , subgrp1){
>>    subgrp1 <- enquo(subgrp1)
>>    indata0 <- indata
>>    temp    <- indata0 %>% select(!!subgrp1) %>% arrange(!!subgrp1) %>%
>>      group_by(!!subgrp1) %>%
>>      mutate(numbering =row_number(), max=max(numbering))
>>    view(temp)
>>    f_table <- table(temp$Species)
>>    view(f_table)
>> }
>> 
>> f1(iris, Species)
>> 
>
>Someone is sure to point out that this isn't an RStudio support list, 
>but your issue is with R, not with RStudio.  You created the table in 
>f1, but you never returned it.  The variable f_table is local to the 
>function.  You'd need the following code to do what you want:
>
>f1 <- function(indata , subgrp1){
>   subgrp1 <- enquo(subgrp1)
>   indata0 <- indata
>   temp    <- indata0 %>% select(!!subgrp1) %>% arrange(!!subgrp1) %>%
>     group_by(!!subgrp1) %>%
>     mutate(numbering =row_number(), max=max(numbering))
>   view(temp)
>   f_table <- table(temp$Species)
>   view(f_table)
>   f_table
>}
>
>f_table <- f1(iris, Species)
>
>It's not so easy to also make temp available.  You can do it with 
>assign(), but I think you'd be better off splitting f1 into two 
>functions, one to create temp, and one to create f_table.
>
>Duncan Murdoch
>
>______________________________________________
>R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>and provide commented, minimal, self-contained, reproducible code.

-- 
Sent from my phone. Please excuse my brevity.



More information about the R-help mailing list