例如,我可以这样做:
x = c(1, 2, 3, 3, 2, 1)
y = c(rep("a", 3), rep("b", 3))
z= ifelse(x==1 & y=="a", "a1", ifelse(x==1 & y=="b", "b1", ifelse(x==2 & y=="a", "a2", ifelse(x==2 & y=="b", "b2", ifelse(x==3 & y=="a", "a3", "b3")))))
z = factor(z)
但这很乏味,有更好的方法吗?
答案 0 :(得分:3)
只需使用paste0
来组合矢量
factor(paste0(y, x))
或者
factor(paste(y, x, sep=""))
答案 1 :(得分:1)
如similar thread所述:
如果您有两个因素<Button Style="{StaticResource StyleButton}" controls:AttachedPropertyForButton.PressedBackground="Orange" Content="Foo"/>
和x
,则使用
y
将根据您的需要生成新因子。它的水平是两种因素水平的所有可能组合(对)。