r - 根据列中的值分配分数
问题描述
MY_CARS_SALES <- data.frame(
AGE = c(2, 6, 3, 7, 4, 5),
ANTIQUE= c("YES", "NO", "NO", "NO", "YES", "NO"),
SMOKE= c(2,0,1,3,0,1),
PRICE = c(45, 40, 6, 22, 16, 10),
TOYOTA = c(5, 9, 8, 9, 2, 3),
VOLVO = c(7, 6, 4, 10, 12, 8),
MERC = c(2, 12, 1, 7, 8, 3),
MAZDA = c(9, 2, 4, 6, 13, 6),
NISSAN = c(1, 3, 23, 7, 12, 2),
HONDA = c(2, 8, 4, 5, 1, 4),
VW = c(4, 12, 7, 9, 5, 1),
ROVER = c(1,3, 2, 4, 3, 1))
你好,希望你们一切都好。我有一个这样的 df,我想告诉 R 查看一些列。对于小于中位数的值(在 VOLVO 和 VW 中),给出 1 分(否则为 0 分)。对于大于中位数的值(在 NISSAN 和 ROVER 中),记 1 分(否则记 0 分)。如果“SMOKE”中的值为“0”,则得分 1(否则,得分为零)。此外,如果“PRICE”中的值介于 6 和 16 之间(否则为 0),则得分 1,如果 ANTIQUE 中的值为“YES”,则得分 1。最后,将所有这些得分相加到一个新列(SCORE)下。我在下面包含了我的代码,它没有像我想象的那样运行。我确定我在这里做错了什么。请有任何建议。
MY_CARS_SALES$NEWSCORE <- rowSums(cbind(
sapply(MY_CARS_SALES[c("VOLVO" , "VW")], function(x){ifelse(x < median(x), 1, 0)}),
sapply(MY_CARS_SALES[c("NISSAN", "ROVER")], function(x){ifelse(x > median(x), 1, 0)}),
sapply(MY_CARS_SALES["SMOKE"], function(x) {ifelse(x == '0', 1, 0)}),
sapply(MY_CARS_SALES["PRICE"], function(x) {ifelse(x == '6:10', 1, 0)}),
sapply(MY_CARS_SALES["ANTIQUE"], function(x) {ifelse(x == 'YES', 1, 0)})))
解决方案
为了与您的代码有最小的差异,
MY_CARS_SALES$NEWSCORE <- rowSums(cbind(
sapply(MY_CARS_SALES[c("VOLVO" , "VW")], function(x){ifelse(x<median(x), 1, 0)}),
sapply(MY_CARS_SALES[c("NISSAN", "ROVER")],function(x){ifelse(x>median(x), 1, 0)}),
sapply(MY_CARS_SALES["SMOKE"], function(x){ifelse(x == '0', 1, 0)}),
sapply(MY_CARS_SALES["PRICE"], function(x){ifelse(x %in% c(6:16), 1, 0)}),
sapply(MY_CARS_SALES["ANTIQUE"], function(x){ifelse(x == 'YES', 1, 0)})))
仅将"PRICE"
行从ifelse(x == '6:10', 1, 0)
toifelse(x %in% c(6:16), 1, 0)
和NEWSCORE
isc(3, 3, 3, 2, 6, 2)
推荐阅读
- jsf - 数据表选择问题以及如何在重复块之外访问 var
- apache-spark - 为什么来自 spark MinHashLSHModel approxSimilarityJoin 的不同文档的 JaccardDistance 始终为 0
- python - 如何检查字符串是否在 JSON 中缺少双引号?
- python-3.x - PyInstaller exe有seg错误,源代码没有
- heroku - 尝试将 .CSV 文件下载到本地下载文件夹时出现 Heroku 问题
- html - Prime NG:按标签搜索下拉菜单
- mongodb - 在 MongoDB 聚合查找中使用以 $ 开头的字段
- c# - 可以将具有“int”和“long”类型的匹配属性名称的两个类联合在一个接口下吗?
- android - Kotlin 中的泛型和 MutableLiveData
- swiftui - How to pass sequential data into a navigationBarTitle in SwiftUI