1 Goal


The goal of this tutorial is to list all the functions defined inside a package. In order to do this, the package should be first installed and loaded. This could be useful if we want to search for methods inside a package.


2 List all functions in a package


# We are going to use the ls function to list all the functions of a package
# First we need to load the library
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
# Now we list the functions of the package
# The structure is as follows, just change the package name to list the proper functions
ls("package:dplyr")
##   [1] "%>%"                   "add_op_single"        
##   [3] "add_row"               "add_rownames"         
##   [5] "all_equal"             "anti_join"            
##   [7] "arrange"               "arrange_"             
##   [9] "as_data_frame"         "as.tbl"               
##  [11] "as.tbl_cube"           "auto_copy"            
##  [13] "base_agg"              "base_no_win"          
##  [15] "base_scalar"           "base_win"             
##  [17] "bench_tbls"            "between"              
##  [19] "bind_cols"             "bind_rows"            
##  [21] "build_sql"             "case_when"            
##  [23] "changes"               "coalesce"             
##  [25] "collapse"              "collect"              
##  [27] "combine"               "common_by"            
##  [29] "compare_tbls"          "compute"              
##  [31] "contains"              "copy_lahman"          
##  [33] "copy_nycflights13"     "copy_to"              
##  [35] "count"                 "count_"               
##  [37] "cumall"                "cumany"               
##  [39] "cume_dist"             "cummean"              
##  [41] "current_vars"          "data_frame"           
##  [43] "data_frame_"           "db_analyze"           
##  [45] "db_begin"              "db_commit"            
##  [47] "db_create_index"       "db_create_indexes"    
##  [49] "db_create_table"       "db_data_type"         
##  [51] "db_drop_table"         "db_explain"           
##  [53] "db_has_table"          "db_insert_into"       
##  [55] "db_list_tables"        "db_query_fields"      
##  [57] "db_query_rows"         "db_rollback"          
##  [59] "db_save_query"         "dense_rank"           
##  [61] "desc"                  "dim_desc"             
##  [63] "distinct"              "distinct_"            
##  [65] "do"                    "do_"                  
##  [67] "ends_with"             "escape"               
##  [69] "eval_tbls"             "everything"           
##  [71] "explain"               "failwith"             
##  [73] "filter"                "filter_"              
##  [75] "first"                 "frame_data"           
##  [77] "full_join"             "funs"                 
##  [79] "funs_"                 "glimpse"              
##  [81] "group_by"              "group_by_"            
##  [83] "group_by_prepare"      "group_indices"        
##  [85] "group_indices_"        "group_size"           
##  [87] "grouped_df"            "groups"               
##  [89] "has_lahman"            "has_nycflights13"     
##  [91] "id"                    "ident"                
##  [93] "if_else"               "inner_join"           
##  [95] "intersect"             "is.grouped_df"        
##  [97] "is.ident"              "is.sql"               
##  [99] "is.src"                "is.tbl"               
## [101] "join_query"            "lag"                  
## [103] "lahman_df"             "lahman_dt"            
## [105] "lahman_mysql"          "lahman_postgres"      
## [107] "lahman_sqlite"         "lahman_srcs"          
## [109] "last"                  "lead"                 
## [111] "left_join"             "location"             
## [113] "lst"                   "lst_"                 
## [115] "make_tbl"              "matches"              
## [117] "memdb_frame"           "min_rank"             
## [119] "mutate"                "mutate_"              
## [121] "mutate_all"            "mutate_at"            
## [123] "mutate_each"           "mutate_each_"         
## [125] "mutate_each_q"         "mutate_if"            
## [127] "n"                     "n_distinct"           
## [129] "n_groups"              "na_if"                
## [131] "named_commas"          "nasa"                 
## [133] "near"                  "nth"                  
## [135] "ntile"                 "num_range"            
## [137] "nycflights13_postgres" "nycflights13_sqlite"  
## [139] "one_of"                "op_base"              
## [141] "op_double"             "op_grps"              
## [143] "op_single"             "op_sort"              
## [145] "op_vars"               "order_by"             
## [147] "partial_eval"          "percent_rank"         
## [149] "progress_estimated"    "query"                
## [151] "rbind_all"             "rbind_list"           
## [153] "recode"                "recode_factor"        
## [155] "regroup"               "rename"               
## [157] "rename_"               "rename_vars"          
## [159] "rename_vars_"          "right_join"           
## [161] "row_number"            "rowwise"              
## [163] "same_src"              "sample_frac"          
## [165] "sample_n"              "select"               
## [167] "select_"               "select_if"            
## [169] "select_query"          "select_vars"          
## [171] "select_vars_"          "semi_join"            
## [173] "semi_join_query"       "set_op_query"         
## [175] "setdiff"               "setequal"             
## [177] "show_query"            "slice"                
## [179] "slice_"                "sql"                  
## [181] "sql_build"             "sql_escape_ident"     
## [183] "sql_escape_string"     "sql_infix"            
## [185] "sql_join"              "sql_not_supported"    
## [187] "sql_prefix"            "sql_quote"            
## [189] "sql_render"            "sql_select"           
## [191] "sql_semi_join"         "sql_set_op"           
## [193] "sql_subquery"          "sql_translate_env"    
## [195] "sql_translator"        "sql_variant"          
## [197] "sql_vector"            "src"                  
## [199] "src_desc"              "src_df"               
## [201] "src_local"             "src_memdb"            
## [203] "src_mysql"             "src_postgres"         
## [205] "src_sql"               "src_sqlite"           
## [207] "src_tbls"              "starts_with"          
## [209] "summarise"             "summarise_"           
## [211] "summarise_all"         "summarise_at"         
## [213] "summarise_each"        "summarise_each_"      
## [215] "summarise_each_q"      "summarise_if"         
## [217] "summarize"             "summarize_"           
## [219] "summarize_all"         "summarize_at"         
## [221] "summarize_each"        "summarize_each_"      
## [223] "summarize_if"          "tally"                
## [225] "tbl"                   "tbl_cube"             
## [227] "tbl_df"                "tbl_sql"              
## [229] "tbl_vars"              "test_frame"           
## [231] "test_load"             "test_register_src"    
## [233] "tibble"                "top_n"                
## [235] "translate_sql"         "translate_sql_"       
## [237] "transmute"             "transmute_"           
## [239] "trunc_mat"             "type_sum"             
## [241] "ungroup"               "union"                
## [243] "union_all"             "vars"                 
## [245] "with_order"

3 List some functions in a package


# We can choose to list only the interesting functions for us using the pattern parameter
ls("package:dplyr", pattern = "sql")
##  [1] "build_sql"           "is.sql"              "lahman_mysql"       
##  [4] "lahman_sqlite"       "nycflights13_sqlite" "sql"                
##  [7] "sql_build"           "sql_escape_ident"    "sql_escape_string"  
## [10] "sql_infix"           "sql_join"            "sql_not_supported"  
## [13] "sql_prefix"          "sql_quote"           "sql_render"         
## [16] "sql_select"          "sql_semi_join"       "sql_set_op"         
## [19] "sql_subquery"        "sql_translate_env"   "sql_translator"     
## [22] "sql_variant"         "sql_vector"          "src_mysql"          
## [25] "src_sql"             "src_sqlite"          "tbl_sql"            
## [28] "translate_sql"       "translate_sql_"
# Or for example

ls("package:dplyr", pattern  = "summarise")
## [1] "summarise"        "summarise_"       "summarise_all"   
## [4] "summarise_at"     "summarise_each"   "summarise_each_" 
## [7] "summarise_each_q" "summarise_if"

4 Conclusion


In this tutorial we have learnt how to list all the functions inside a package. We have added some filters to look for certain functions that are more interesting for us. Remember it’s mandatory to load the package first.