用另一个匹配的值替换字符串中的值
Replace values in String with matching values from another
我得到以下信息:
text <- c("RREPLACE EACH WITH NUMBER FROM LETTERFREQ")
和给定的:
lf <- 1 / 100 * c(
A = 6.756, B = 1.234, C = 2.302, D = 3.518, E = 10.508, F = 1.843, G = 1.667,
H = 5.041, I = 5.763, J = 0.127, K = 0.639, L = 3.330, M = 1.990, N = 5.583,
O = 6.210, P = 1.596, Q = 0.079, R = 4.953, S = 5.234, T = 7.492, U = 2.282,
V = 0.809, W = 1.952, X = 0.124, Y = 1.633, Z = 0.061, ` ` = 17.272)
我的目标是将文本中的每个字母替换为与 lf 中的数值匹配的数字,以便计算总和。
我创建了明文:
plainte <- strsplit(text, "")[[1]]
但我从此迷路了。如何将文本中的每个字母与相应的数值匹配?
你可以使用 match
:
lf[match(plainte, names(lf))]
计算总和:
sum(lf[match(plainte, names(lf))])
给出:
[1] 2.79333
我得到以下信息:
text <- c("RREPLACE EACH WITH NUMBER FROM LETTERFREQ")
和给定的:
lf <- 1 / 100 * c(
A = 6.756, B = 1.234, C = 2.302, D = 3.518, E = 10.508, F = 1.843, G = 1.667,
H = 5.041, I = 5.763, J = 0.127, K = 0.639, L = 3.330, M = 1.990, N = 5.583,
O = 6.210, P = 1.596, Q = 0.079, R = 4.953, S = 5.234, T = 7.492, U = 2.282,
V = 0.809, W = 1.952, X = 0.124, Y = 1.633, Z = 0.061, ` ` = 17.272)
我的目标是将文本中的每个字母替换为与 lf 中的数值匹配的数字,以便计算总和。
我创建了明文:
plainte <- strsplit(text, "")[[1]]
但我从此迷路了。如何将文本中的每个字母与相应的数值匹配?
你可以使用 match
:
lf[match(plainte, names(lf))]
计算总和:
sum(lf[match(plainte, names(lf))])
给出:
[1] 2.79333