から
as.data.frame(do.call(rbind, dataset))
をldply
を使用することができます。
ない場合は、物事はもう少しトリッキー得るが、これは実行する必要があります。
ケースplyrで
do.call(
plyr::rbind.fill,
lapply(
dataset,
function(x){as.data.frame(t(cbind(x)))}
)
)
または
library(plyr
do.call(
rbind.fill,
lapply(
dataset,
function(x){as.data.frame(t(cbind(x)))}
)
)
は1つがrbind-の一つの独自のバージョンを作ることができるオプションではありません...
#' function for binding data.frames even if names do not match
#' @param df1 first data.frame to rbind
#' @param df2 second data.frame to rbind
#' @keywords internal
rbind_fill <- function(df1=data.frame(), df2=data.frame()){
names_df <- c(names(df1), names(df2))
if(dim(df1)[1] > 0){
df1[, names_df[!(names_df %in% names(df1))]] <- rep(NA, dim(df1)[1])
}else{
df1 <- data.frame()
}
if(dim(df2)[1] > 0){
df2[, names_df[!(names_df %in% names(df2))]] <- rep(NA, dim(df2)[1])
}else{
df2 <- data.frame()
}
rbind(df1, df2)
}
do.call(
rbind_fill,
lapply(
dataset,
function(x){as.data.frame(t(cbind(x)))}
)
)
感謝を埋めます!パッケージを '/home/harsh/R/x86_64-pc-linux-gnu-library/3.0'にインストールする ( 'lib'は不特定) 警告メッセージ: パッケージ 'plyr'は使用できません(Rバージョン3.0用)。 2)プライヤーなしでも可能ですか? – harsh
'plyr'パッケージは[CPAN(https://cran.r-project.org/web/packages/plyr/index.html)で入手可能です。しかし、私はあなたが@のpetermeissnerの答えにあるものと似たような行うことができ、R. – steveb
はいのバージョン3.2.3を使用しています: 'as.data.frame(do.call(rbind、strsplit(as.character(データセット)を、スプリット= ""))) ' – steveb