我一直在使用数据集,该数据集要求我拆分某些选定的行并将其转换为列。我通常用于这类事情的传播函数并不能完全按照我想要的方式工作。这是我得到的最接近的可重现示例:
df<-data.frame(person=c("Matt","Tom","Shane","Shane"),salary=c(100,200,500,400))
> df
person salary
1 Matt 100
2 Tom 200
3 Shane 500
4 Shane 400
假设这是我得到的数据框,如何将person == Shane所在的行拆分为单独的列?这是我一直在努力实现的目标:
person salary Shane
1 Matt 100 500
2 Tom 200 400
我该如何去做。非常感谢。
答案 0 :(得分:0)
我不确定为什么要这么做,但是使用dplyr:
df2<-filter(df,person!='Shane')
df2$Shane<-filter(df,person=='Shane')$salary
> df2
person salary Shane
1 Matt 100 500
2 Tom 200 400