R 将系数重新编码到我选择的编号
我喜欢把NG转换成0,SG=1.25,LG=7.25,MG=26,HG=40 我的实际数据与下面的t完全相同,如下所示: 或者这个:R 将系数重新编码到我选择的编号,r,sapply,R,Sapply,我喜欢把NG转换成0,SG=1.25,LG=7.25,MG=26,HG=40 我的实际数据与下面的t完全相同,如下所示: 或者这个: t <- sapply(t,switch,"NG"=0,"SG"=1.25,"LG"=7.25,"MG"=26, "HG"=40) 您可能需要: t <- rep(c(NG = 0, SG = 1.25, LG = 7.25, MG = 26, HG = 40), each = 5) t <- factor(t) levels(t) # [1
t <- sapply(t,switch,"NG"=0,"SG"=1.25,"LG"=7.25,"MG"=26, "HG"=40)
您可能需要:
t <- rep(c(NG = 0, SG = 1.25, LG = 7.25, MG = 26, HG = 40), each = 5)
t <- factor(t)
levels(t)
# [1] "0" "1.25" "7.25" "26" "40"
labels(t)
# [1] "NG" "NG" "NG" "NG" "NG" "SG" "SG" "SG" "SG" "SG" "LG" "LG" "LG" "LG" "LG"
# [16] "MG" "MG" "MG" "MG" "MG" "HG" "HG" "HG" "HG" "HG"
仍然可以使用标高标签提取数值:
t["SG"]
# SG
# 1.25
# Levels: 0 1.25 7.25 26 40
似乎对我有用。有什么问题吗?它对我也有用well@thelatemail>系数,级别=cNG,SG,LG,MG,HG,标签=c0,1.25,7.25,26,40 X.1 X1 X2 X4 X8 X12 X24 X48级别:0 1.25 7.25 26 40>sapplyt,开关,NG=0,SG=1.25,LG=7.25,MG=26,HG=40 FUNX中的错误[[i]],…:EXPR在我的数据中必须是长度为1的矢量。帧NG等周围没有任何矢量。。。这是什么意思?它适用于上面的示例数据…>sort.listy中的factort Error:“x”必须是“sort.list”的原子形式您在列表中调用过“sort”吗?但这是一个数据帧。。。我真的被这搞糊涂了。data.frames是一种特殊类型的列表
t <- sapply(t,switch,"NG"=0,"SG"=1.25,"LG"=7.25,"MG"=26, "HG"=40)
t <- rep(c(NG = 0, SG = 1.25, LG = 7.25, MG = 26, HG = 40), each = 5)
t <- factor(t)
levels(t)
# [1] "0" "1.25" "7.25" "26" "40"
labels(t)
# [1] "NG" "NG" "NG" "NG" "NG" "SG" "SG" "SG" "SG" "SG" "LG" "LG" "LG" "LG" "LG"
# [16] "MG" "MG" "MG" "MG" "MG" "HG" "HG" "HG" "HG" "HG"
unclass(t)
# NG NG NG NG NG SG SG SG SG SG LG LG LG LG LG MG MG MG MG MG HG HG HG HG HG
# 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5
# attr(,"levels")
# [1] "0" "1.25" "7.25" "26" "40"
t["SG"]
# SG
# 1.25
# Levels: 0 1.25 7.25 26 40