|
fn.join <- function(df1, df2) {
cols.key <- key(df2)
if (is.data.table(df1)) {
data.key <- df1[,cols.key,with=F]
} else {
data.key <- data.table(df1[,cols.key,drop=F])
}
df2.join <- df2[data.key,allow.cartesian=TRUE]
df2.join <- df2.join[
,!(colnames(df2.join) %in% cols.key),with=F]
cbind(df1, df2.join)
}
这个函数运行时出错:
Error in data.frame(..., check.names = FALSE) :
arguments imply differing number of rows: 320274, 320276
Calls: source ... fn.build.confirm.stats -> fn.join -> cbind -> cbind -> data.frame
请问数据的问题是什么?我并不懂R语言,这是老师给的任务,只能求教大神了 |
|