2017-07-27 41 views
-1

我有一个非常简单的问题。我正在尝试为R中的每一行获取两列之间的范围。我想在同一数据框中的新列中对范围进行评分。R两列之间的范围

我的数据会看起来像:

x y 
107 233 
87 123 
95 284 
261 287 

我想添加一个新的列,具有107:233,87:123,等

什么是做到这一点的最好方法是什么?

+2

只是不要'DF美元的新< - do.call(粘贴,c(df,sep =“:”))'如果它是一个字符串。但如果我们需要'list'列,那么'df $ new < - Map(“:”,df $ x,df $ y)' – akrun

+1

@akrun为什么'do.call'?这是有效的:'df $ new < - paste(df $ x,df $ y,sep =“:”)' – Masoud

+1

@Masoud FOr一般情况下,有100列时 – akrun

回答

0

我们可以用Map基础上的“X”和“Y”对应的元素来获取序列并将其分配给“新”,这将是一个list

df$new <- Map(":", df$x, df$y)