如何查看虚拟变量

How to view dummy variables

我有一个变量 (FTA),它有 2 个选项(是或否),我想创建一个虚拟变量来用 yes=1 和 no=0 替换它。从时间段(t)3开始,它应该等于1,之前应该是0.

df<-dummy.data.frame(df, names=c("FTA"), sep="_")

输入这行代码后,在查看数据汇总时看不出和之前有什么不同(还是统计变量名下面一栏的no和yes的个数)。

我也试过:

dummy <- as.numeric(t >= 3)

dummy2 <- as.numeric(t < 3)

以及:

ifelse(t >=3, 1, 0)

但我仍然无法观察到摘要有任何变化。 我这样做是否正确,我该怎么做才能查看我创建的虚拟变量并用它替换旧变量?

编辑: Example of data

我的目标是创建一个替代 "FTA" 的虚拟变量。

这是你想要的吗? (以OP中的值4为临界分水岭)

# Data:
t <- c(1:10)
FTA <- sample(c("yes", "no"), 10, replace = T)
df <- data.frame(t, FTA)
df
    t FTA
1   1 yes
2   2 yes
3   3 yes
4   4  no
5   5  no
6   6  no
7   7 yes
8   8  no
9   9 yes
10 10 yes

# Change `FTA` based on two conditions:
df$new <-ifelse(df$t >= 4 &df$FTA=="yes", 1, 
            ifelse(df$t >= 4 &df$FTA=="no", 0, as.character(df$FTA)))
df
    t FTA new
1   1 yes yes
2   2 yes yes
3   3 yes yes
4   4  no   0
5   5  no   0
6   6  no   0
7   7 yes   1
8   8  no   0
9   9 yes   1
10 10 yes   1

您可以执行以下操作:

# sample data frame
df <- data.frame(t = c(1,2,3,4,5,6), flag = c('no','yes','yes','yes','yes','yes'))

# encode the values
df$flag <- ifelse(df$flag == 'yes',1, 0)

# set values as 0 before time = 3
df[df$t < 3, c('flag')] <- 0

  t flag
1 1    0
2 2    0
3 3    1
4 4    1
5 5    1
6 6    1