我正在尝试将字符串中出现的电话(字符)列表,但是变音符号会自行列表为字符.理想情况下,我在国际音标中有一个单词表,有相当数量的变音符号和它们与基本字符的几种组合.我在这里只给出了一个单词的MWE,但是单词列表和更多类型的组合也是如此.
> word <- "n?ana" # word constituted by 4 phones: [n?],[a],[n],[a]
> table(strsplit(word, ""))
 ? a n 
1 2 2
但想要的结果是:
a n n?
2 1 1
我怎样才能获得这种结果?
我正在尝试使用变音符号来获取字符串中的字符数,但我无法设法获得正确的结果。
> x <- "n?ala"
> nchar(x)
[1] 5
我想得到的是4,因为n?应该将其视为一个字符(即变音符号不应被单独视为字符,即使在基本字符上堆叠了多个变音符号也是如此)。
我如何获得这种结果?
我有一个时间序列数据集,其中包含一个连续的结果变量和两个因子预测变量(一个具有 6 个级别,一个具有 2 个级别)。
我想对连续变量上的两个因子变量的非线性交互进行建模。
这是我到目前为止的模型:
library(mgcv)
model <- bam(
    outcome ~
        factor_1 + factor_2 +
        s(time, k = 9) +
        s(time, by = factor_1, k = 9) +
        s(time, by = factor_2, k = 9),
    data = df
)
summary(model)
Family: gaussian 
Link function: identity 
Formula:
outcome ~ factor_1 + factor_2 + s(time, k = 9) + s(time, by = factor_1, 
    k = 9) + s(time, by = factor_2, k = 9)
Parametric coefficients:
            Estimate Std. Error t …我正在尝试创建一个for循环,将一个字符串附加到数据框中的每个数据点.我正在使用for循环,因为数据框可能随列数而变化.这是可能的数据帧的示例.
lexicon <- data.frame(
    X.lx = c("word", "word2", "word3"),
    X.ph = c("phonetic", "", "phonetic2")
)
我设法创建一个循环,它接受列的名称并将其附加到数据点(数据存储在数据框中lexicon:
for(i in names(lexicon)){
   lexicon[[i]] <- sub("^", paste(names(lexicon[i]), " ", sep=""), lexicon[[i]])
}
这会产生:
  X.lx        X.ph
1 X.lx word   X.ph phonetic
2 X.lx word2  X.ph 
3 X.lx word3  X.ph phonetic2
我试图设置循环,如数据框中的空数据点被跳过sub(),但没有成功.期望的输出将是
  X.lx        X.ph
1 X.lx word   X.ph phonetic
2 X.lx word2   
3 X.lx word3  X.ph phonetic2
这是我的试用代码:
for(i in names(lexicon)){
   lexicon[[i]][which(lexicon[[i]] != "")] <- sub("^", paste(names(lexicon[i]), " ", sep=""), lexicon[[i]][which(lexicon[[i]] != …我是 R 的新手,我不知道如何让 R 计算子组的平均值,而子组本身就是子组的平均值。我会解释得更清楚。
我有一个像这样的数据框:
GROUP WORD WLN
1     1    4
1     1    3
1     1    3
1     2    2
1     2    2
1     2    3
2     3    1
2     3    1
2     3    2
2     4    1
2     4    1
2     4    1
...   ...  ...
但真实的一共有5组25个单词(每组5个单词;每个单词都被5个受试者分配了1到4的数字......)。
我需要获取每个单词的 WLN 平均值,我可以使用循环轻松完成此操作并将结果保存在向量中;但然后我需要一个向量,其中根据单词所属的组来表示这些平均值...所以我需要第1组的单词的平均值,然后是第2组的单词的平均值...(我不知道不知道我是否说清楚了)。
如果不一组一组地做,我怎样才能得到这个呢?