【发布时间】:2019-10-20 08:09:22
【问题描述】:
我的环境中有四个数据框,每个数据框的第一列如下所示:
product.consom.unit.tax.currency.geo.time
1 6000,4161901,KWH,I_TAX,EUR,AL
2 6000,4161901,KWH,I_TAX,EUR,AT
3 6000,4161901,KWH,I_TAX,EUR,BA
4 6000,4161901,KWH,I_TAX,EUR,BE
5 6000,4161901,KWH,I_TAX,EUR,BG
6 6000,4161901,KWH,I_TAX,EUR,CY
我想使用 tidyr separate 将第一列分成多列:
data <- list(c("df1", "df2", "df3", "df4"))
sep <- function(x){
x <- separate(x, 1, c("prod", "band", "unit", "tax", "currency", "geo"), ",", remove = TRUE)
}
lapply(data, sep)
当我运行lapply 时出现以下错误:
UseMethod("separate_") 中的错误: 没有适用于“字符”类对象的“单独_”方法
我们将不胜感激任何和所有的帮助!
【问题讨论】:
-
为什么不直接将其读取为 csv 文件?
-
您正在尝试分离字符向量
c("df1", "df2", "df3", "df4"),这是不可能的。您需要一个数据框列表。 -
@gersht 很到位。您应该调用您的实际数据集名称而不是字符向量,即
df1而不是"df1"。 -
很有道理,谢谢你的澄清!