如何提取所有带有符号&#34; <-
&#34;的单词?无论是在单词的结尾还是介于两者之间的某个地方,但只有在&#34; <-
&#34;符号后跟一个点。
将其置于上下文中。练习6.5.3 a。 Hadley Wickhams - Advanced R 要求读者列出基础包中的所有替换功能。
只有一种方法的替换函数由符号<-
表示
在函数名称的末尾。但是,通用功能有它们的功能
方法名称附加到替换表单的名称(带点),这样<-
不再位于函数名称的末尾。示例split<-.data.frame
编辑:
obj <- mget(ls("package:base"), inherits = TRUE)
funs <- Filter(is.function, objs)
这是你如何拉出基础包中的所有功能。现在我想找到替换函数。
答案 0 :(得分:4)
如果您想要所有基本包更换功能及其各自的S3方法,可以尝试
ls(envir = as.environment("package:base"), pattern = "<-")
如果没有加载包,则会产生以下结果:
[1] "<<-" "<-" "[<-" [4] "[[<-" "@<-" "$<-" [7] "attr<-" "attributes<-" "body<-" [10] "class<-" "colnames<-" "comment<-" [13] "[<-.data.frame" "[[<-.data.frame" "$<-.data.frame" [16] "[<-.Date" "diag<-" "dim<-" [19] "dimnames<-" "dimnames<-.data.frame" "Encoding<-" [22] "environment<-" "[<-.factor" "[[<-.factor" [25] "formals<-" "is.na<-" "is.na<-.default" [28] "is.na<-.factor" "is.na<-.numeric_version" "length<-" [31] "length<-.factor" "levels<-" "levels<-.factor" [34] "mode<-" "mostattributes<-" "names<-" [37] "names<-.POSIXlt" "[<-.numeric_version" "[[<-.numeric_version" [40] "oldClass<-" "parent.env<-" "[<-.POSIXct" [43] "[<-.POSIXlt" "regmatches<-" "row.names<-" [46] "rownames<-" "row.names<-.data.frame" "row.names<-.default" [49] "split<-" "split<-.data.frame" "split<-.default" [52] "storage.mode<-" "substr<-" "substring<-" [55] "units<-" "units<-.difftime"
感谢@ 42帮助我改进这个答案。
答案 1 :(得分:1)
我们可以尝试
library(stringr)
str_extract(v1, "\\w+<-$|\\w*<-\\.\\S+")
#[1] "split<-.data.frame" NA "splitdata<-"
v1 <- c("split<-.data.frame", "split<-data", "splitdata<-")