R:如何将数据帧列表中的数值更改为一个字符,取决于它们相对于特定数量阈值的位置?
我有一个数据帧列表,每个数据帧都包含数值R:如何将数据帧列表中的数值更改为一个字符,取决于它们相对于特定数量阈值的位置?,r,R,我有一个数据帧列表,每个数据帧都包含数值 #DummyData df1 = data.frame(x = rnorm(11), y = rnorm(11)) df2 = data.frame(x = rnorm(11), y = rnorm(11)) df3 = data.frame(x = rnorm(11), y = rnorm(11)) df_list = mget(ls(pattern = "df[1-3]")) 我想根据数值与平均值+/-10%的关系重新编码数值。具体而言,我希望将高
#DummyData
df1 = data.frame(x = rnorm(11), y = rnorm(11))
df2 = data.frame(x = rnorm(11), y = rnorm(11))
df3 = data.frame(x = rnorm(11), y = rnorm(11))
df_list = mget(ls(pattern = "df[1-3]"))
我想根据数值与平均值+/-10%的关系重新编码数值。具体而言,我希望将高于平均值10%以上的值更改为“高”,将低于平均值10%的值更改为“中”,将低于平均值10%以上的值更改为“低”
我的策略是使用由多个ifelse语句组成的函数,然后使用lappy将其应用于列表
myfunction <- function(x) {C <-mean(x)
ifelse(x > 1.1*C, "High", x)
ifelse(x < 0.9*C, "Low", "Medium")
}
df_list <- lapply(df_list, myfunction)
myfunction尝试将两个ifelse()调用链接在一起。
调用:
myfunction <- function(x) {
C <- mean(x)
ifelse(x > 1.1*C, "High", ifelse(x < 0.9*C, "Low", "Medium"))
}
myfunction尝试将两个ifelse()调用链接在一起。
调用:
myfunction <- function(x) {
C <- mean(x)
ifelse(x > 1.1*C, "High", ifelse(x < 0.9*C, "Low", "Medium"))
}
myfunction