r - 如何在 R 中将分类变量转换为连续变量?
问题描述
我有一个包含许多变量的数据框,例如百分比、年份、公顷等,但我有一个是距离,我正在评估直接影响(直接受影响的区域)以及这种影响的程度,以直接影响的公里数为单位影响,我将其与对照进行比较。我有:
在这一点上,我的变量是分类的,即使它们代表距离。
Distances:"dirImpct",1km","2km","3km","4km","5km","6km","7km","8km","9km","10km","20km","30km","40km","50km","60km","70km", "controle")
我想要这样的东西:
Distances: dirImpct < km < control
DirImpact= distance 0
km= distances, (1,2,3,4,5,6,7,8,9,10,20,30,40,50,60,70)
control= distances > 70
解决方案
您可以转换为factor
并重命名levels
.
dat$Distances <- factor(dat$Distances)
lvl <- levels(dat$Distances)
levels(dat$Distances)[c(length(lvl) - 1, length(lvl))] <-
c("0", "dist > 70")
dat
# x Distances
# 1 -0.5448391 dist > 70
# 2 -0.7178019 1km
# 3 0.8157044 2km
# 4 0.2789727 3km
# 5 0.4940412 4km
# 6 0.4096203 5km
# 7 -0.9503315 6km
# 8 -0.3750518 7km
# 9 0.3385260 8km
# 10 0.3666900 9km
# 11 0.9265970 10km
# 12 0.2554600 20km
# 13 1.4776808 30km
# 14 -0.3211048 40km
# 15 -0.9469399 50km
# 16 -0.1853323 60km
# 17 -0.4438878 70km
# 18 -1.0206900 0
数据:
dat <- data.frame(x=rnorm(length(Distances)),
Distances=c("dirImpct","1km","2km","3km","4km","5km","6km","7km",
"8km","9km","10km","20km","30km","40km","50km","60km",
"70km", "controle")
)
推荐阅读
- angular - 在没有 JPA 的情况下使用 Angular 2 & Spring Boot & PL/SQL
- python - Python 更新 rcParams 意外行为
- express - 在 electron 框架中使用 express JS 和 Vue.js
- c# - 如何获取字典中第一个键的名称?
- node.js - 将 # 作为密码存储在 .env 文件中
- linux - 将变量从 shell 脚本传递到配置文件
- scala - 如何在spark scala中为withcolumn处理异常并继续剩余记录
- snowflake-cloud-data-platform - 需要帮助了解为什么多个左连接没有在雪花中返回
- spring-boot - 如何在 Spring Boot 中从 JPA 自定义 @Query 获取结果到 DTO
- c++ - 为什么要将对象的副本作为函数的参数?为什么 const ref 不是默认的参数方式?