- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
view(fastcars)
day car1 car2 car3
1 day1 red silver blue
2 day2 blue red green
3 day3 blue white green
4 day4 green black red
5 day5 black red silver
cars <- stack(fastcars[, c(2:4)])
cars <- t(unique(cars[,1]))
fastcars[c(cars)] <- NA
day car1 car2 car3 red blue green black silver white
1 day1 red silver blue NA NA NA NA NA NA
2 day2 blue red green NA NA NA NA NA NA
3 day3 blue white green NA NA NA NA NA NA
4 day4 green black red NA NA NA NA NA NA
5 day5 black red silver NA NA NA NA NA NA
day car1 car2 car3 red blue green black silver white
day1 red silver blue 1 1 0 0 1 0
day2 blue red green 1 1 1 0 0 0
day3 blue white green 0 1 1 0 0 1
day4 green black red 1 0 1 1 0 0
day5 black red silver 1 0 0 1 1 0`
#Generate example dataframe with character column
example <- as.data.frame(c("A", "A", "B", "F", "C", "G", "C", "D", "E", "F"))
names(example) <- "strcol"
#For every unique value in the string column, create a new 1/0 column
#This is what Factors do "under-the-hood" automatically when passed to function requiring numeric data
for(level in unique(example$strcol)){
example[paste("dummy", level, sep = "_")] <- ifelse(example$strcol == level, 1, 0)
}
最佳答案
这里有几个选项。
选项 1:我们可以在重新转换熔化的数据后使用 data.table 合并。
library(data.table) # v1.9.6
## make 'df' a data.table
setDT(df)
## melt, cast, and merge on 'day'
df[dcast(melt(df, "day"), day ~ value, fun.aggregate = length), on = "day"]
# day car1 car2 car3 black blue green red silver white
# 1: day1 red silver blue 0 1 0 1 1 0
# 2: day2 blue red green 0 1 1 1 0 0
# 3: day3 blue white green 0 1 1 0 0 1
# 4: day4 green black red 1 0 1 1 0 0
# 5: day5 black red silver 1 0 0 1 1 0
## make sure car columns are character (may not be necessary)
df[-1] <- lapply(df[-1], as.character)
## get unique values of car columns
u <- unique(unlist(df[-1]))
## match 'u' with each row in 'df'
l <- lapply(seq_len(nrow(df)), function(i) as.numeric(u %in% df[i, -1]))
## bring the data together
cbind(df, setNames(do.call(rbind.data.frame, l), u))
# day car1 car2 car3 red blue green black silver white
# 1 day1 red silver blue 1 1 0 0 1 0
# 2 day2 blue red green 1 1 1 0 0 0
# 3 day3 blue white green 0 1 1 0 0 1
# 4 day4 green black red 1 0 1 1 0 0
# 5 day5 black red silver 1 0 0 1 1 0
df <-structure(list(day = structure(1:5, .Label = c("day1", "day2",
"day3", "day4", "day5"), class = "factor"), car1 = structure(c(4L,
2L, 2L, 3L, 1L), .Label = c("black", "blue", "green", "red"), class = "factor"),
car2 = structure(c(3L, 2L, 4L, 1L, 2L), .Label = c("black",
"red", "silver", "white"), class = "factor"), car3 = structure(c(1L,
2L, 2L, 3L, 4L), .Label = c("blue", "green", "red", "silver"
), class = "factor")), .Names = c("day", "car1", "car2",
"car3"), class = "data.frame", row.names = c("1", "2", "3", "4",
"5"))
关于r - 用 1 或 0 填充列,如果该列名与在同一数据帧内的其他命名列中找到的变量匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32702737/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!