Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 基于字母创建数字向量_R - Fatal编程技术网

R 基于字母创建数字向量

R 基于字母创建数字向量,r,R,所以,问题是: 创建一个给定一个单词的函数,返回位置 单词的字母在字母向量上的位置。例如,如果 如果为'abba',函数将返回1。“ 到目前为止,我得到的是: l <- function(word) { chr <- c() y <- c() strsplit(chr,word) i<-1 while(i<length) { o<-letters[i] x<-chr[i]

所以,问题是:

创建一个给定一个单词的函数,返回位置 单词的字母在字母向量上的位置。例如,如果 如果为'abba',函数将返回1。“

到目前为止,我得到的是:

l <- function(word) {
    chr <- c()
    y <- c()
    strsplit(chr,word)
    i<-1
    while(i<length) {
           o<-letters[i]
           x<-chr[i]
           if(o==x) {
                    y[i]<-i
           }
           i+1
    }
    y
}
l
library(purrr)
我的乐趣%
strsplit(“”%>%
地图(系数,等级=字母)%>%
映射(如数字)
}
x[[1]]
#> [1] 1 2 2 1
#> 
#> [[2]]
#> [1]  8  5 12 12 15
这里我们使用的因子是隐藏的整数


str
成为字符向量,例如
str和
base R

lapply(strsplit(x, "", fixed = TRUE), match, letters)

[[1]]
[1] 1 2 2 1

我在
base
中提供了另一个有趣的函数:

x <- "abcxyz"
strtoi(strsplit(x, "")[[1]], 36) - 9
# [1]  1  2  3 24 25 26

x您没有将
strsplit的输出分配给任何对象。另外,您的拆分参数丢失,应该是
spit=“
我正在查看
stroi
的文档(从未使用过,似乎很酷),但是您能解释一下36和9的来源以及它们在这里的作用吗?@camille我很抱歉忽略了解释。我编辑我的答案。
x <- "abcxyz"
strtoi(strsplit(x, "")[[1]], 36) - 9
# [1]  1  2  3 24 25 26