'colsplit' 函数出错?
Error in 'colsplit' function?
我正在尝试使用重塑包中的 transform
和 colsplit
将数据框的一列拆分为两列。我不明白我做错了什么。这是一个例子...
library(reshape)
df1 <- data.frame(col1=c("x-1","y-2","z-3"))
现在我试图在分隔符“-”处将 col1
拆分为 col1.a
和 col1.b
。以下是我的代码...
df1 <- transform(df1,col1 = colsplit(col1,split='-',names = c('a','b')))
现在在我的 RStudio 中,当我执行 View(df1)
时,我确实看到了 col1.a 和 col1.b 以我想要的方式拆分。
但是当我运行...
df1$col1.a
或 head(df1$col1.a)
我得到 NULL。显然我无法对这些拆分列进行任何进一步的操作。这到底有什么问题?
colsplit
returns 一个列表,将它们分配给数据框中的多个列的最简单(惯用)方法是使用 [<-
例如
df1[c('col1.a','col1.b')] <- colsplit(df1$col1,'-',c('a','b'))
在转换中执行此操作会困难得多(参见 Assign multiple new variables on LHS in a single line in R)
我正在尝试使用重塑包中的 transform
和 colsplit
将数据框的一列拆分为两列。我不明白我做错了什么。这是一个例子...
library(reshape)
df1 <- data.frame(col1=c("x-1","y-2","z-3"))
现在我试图在分隔符“-”处将 col1
拆分为 col1.a
和 col1.b
。以下是我的代码...
df1 <- transform(df1,col1 = colsplit(col1,split='-',names = c('a','b')))
现在在我的 RStudio 中,当我执行 View(df1)
时,我确实看到了 col1.a 和 col1.b 以我想要的方式拆分。
但是当我运行...
df1$col1.a
或 head(df1$col1.a)
我得到 NULL。显然我无法对这些拆分列进行任何进一步的操作。这到底有什么问题?
colsplit
returns 一个列表,将它们分配给数据框中的多个列的最简单(惯用)方法是使用 [<-
例如
df1[c('col1.a','col1.b')] <- colsplit(df1$col1,'-',c('a','b'))
在转换中执行此操作会困难得多(参见 Assign multiple new variables on LHS in a single line in R)