我有一个包含顺序数据的数据框:
df <- data.frame(
t1=c("e","e","e"),t2=c("e","e","u"),t3=c("e","e","u"),t4=c("e","u","e"),t5=c("e","u","e"))
看起来像
> df
t1 t2 t3 t4 t5
1 e e e e e
2 e e e u u
3 e u u e e
Run Code Online (Sandbox Code Playgroud)
我想将具有状态序列的数据帧转换为具有转换序列的数据帧,如下所示:
> dfNew
t1 t2 t3 t4 t5
1 se ee ee ee ee
2 se ee ee eu uu
3 se eu uu ue ee
Run Code Online (Sandbox Code Playgroud)
其中"s"表示起始状态.
我很感激你的帮助.
这是一种创建转换数据框的方法:
setNames(as.data.frame(t(apply(df, 1,
function(x)
paste(c("s", head(x, -1)), x, sep = "")))),
names(df))
t1 t2 t3 t4 t5
1 se ee ee ee ee
2 se ee ee eu uu
3 se eu uu ue ee
Run Code Online (Sandbox Code Playgroud)