2016-01-21 62 views
1

首先,我不确定我是否将此主题标题标题正确,但希望描述将清除所有内容。如何为新行重新赋值并在这些新行中保留值的其余部分

首先,我有过这样

vehicle type     number1 number2 
"car" "truck, SUV, hatchback" 2  3 
"bike" "scraper, lowrider"  5  7 
"plane" "bomber"    2  3 

其次数据帧,我从splitstackshape使用大cSplit功能,该数据帧更改为类似这样

vehicle type1  type2  type3  number1 number2 
"car" "truck" "SUV"  "hatchback" 2  3 
"bike" "scraper" "lowrider" NA   5  7 
"plane" "bomber" NA   NA   2  3 

但是作为我的最后结果,我希望看到这样的事情

vehicle type  number1 number2 
"car" "truck"  2  3 
"car" "SUV"  2  3 
"car" "hatchback" 2  3 
"bike" "scraper" 5  7 
"bike" "lowrider" 5  7 
"plane" "bomber" 2  3 

很明显,我不知道如何做到这一点,我甚至不知道话题是否足以描述我的问题(我感觉包裹整理可能会有所帮助)。 谢谢您提前

回答

3

默认directionwidecSplit。我们可以指定direction='long'以获得预期的输出。

library(splitstackshape) 
cSplit(df1, "type", sep=", ", "long") 
# vehicle  type number1 number2 
#1:  car  truck  2  3 
#2:  car  SUV  2  3 
#3:  car hatchback  2  3 
#4: bike scraper  5  7 
#5: bike lowrider  5  7 
#6: plane bomber  2  3 
+1

是的,它的工作原理!多谢@arkun – AlienDeg

相关问题