使用rbind连接时的R语言警告

使用rbind连接时的R语言警告,r,concatenation,rbind,R,Concatenation,Rbind,在R中,我在四个文件中的每个文件中连接了4个具有相同变量名的数据文件: ps <- rbind(ps1, ps2, ps3, ps4) 我不知道这些信息意味着什么,也不知道如何解决我的问题。谢谢你的帮助。谢谢。最简单的修复方法可能是在读取XLS文件时,可以设置stringsAsFactors=FALSE 发生的情况是,某些列被转换为因子,但每个文件都有自己的因子,无法自动组合 进一步阅读:,请在阅读之前尝试以下内容: pstmp <- lapply( list (ps1, ps2,

在R中,我在四个文件中的每个文件中连接了4个具有相同变量名的数据文件:

ps <- rbind(ps1, ps2, ps3, ps4)

我不知道这些信息意味着什么,也不知道如何解决我的问题。谢谢你的帮助。谢谢。

最简单的修复方法可能是在读取
XLS
文件时,可以设置
stringsAsFactors=FALSE

发生的情况是,某些列被转换为
因子
,但每个文件都有自己的
因子
,无法自动组合


进一步阅读:,

请在阅读之前尝试以下内容:

pstmp <- lapply( list (ps1, ps2, ps3, ps4), 
                  function(df) as.data.frame( 
                        lapply(df, if (is.factor(cl)){ as.character(cl)
                                       } else {cl} ) ) )

为什么?如果您的数据具有字符值,并且您接受了read.table函数的默认设置,则您得到了因子列,并且不同的数据帧可能没有相同的值集。这起到了作用:可能最简单的修复方法是,在读取XLS文件时,您可以将StringsAsAffactors设置为FALSE谢谢@用户2502904不客气。如果你喜欢,请“接受”我的答案。您可以在此处阅读有关如何在StackOverflow(和其他堆栈交换站点)上处理答案的更多信息:
pstmp <- lapply( list (ps1, ps2, ps3, ps4), 
                  function(df) as.data.frame( 
                        lapply(df, if (is.factor(cl)){ as.character(cl)
                                       } else {cl} ) ) )
ps <- do.call(rbind, pstmp)