【发布时间】:2015-09-28 18:51:13
【问题描述】:
我有一个 csv 文件,我们称之为 file1.csv。当我读取一个新文件时,比如 file2.csv,我想首先检查 file1.csv 中的所有列,这基本上是我期望的数据格式,都存在于 file2.csv 中。
file2.csv 可能有额外的列,但我想构建我的数据集,使其基本上被修剪为 file1.csv 中存在的列。
我该怎么做?
编辑: @user1436187,对不起,我没有考虑 %in%。我能够使用它
if(length(which(names(df2)%in% names(df1))) == length(names(df1)))
{
cat(paste("df2 contains all columns in df1"))
}else
{
cat(paste("df2 does not contain all columns in df1"))
}
【问题讨论】:
-
您可以使用
read.csv将它们读到R,并使用match或%in%检查列。有什么问题! -
你要检查他们是否有相同的班级吗?一些例子会有所帮助。
dat2New <- dat2[names(dat1)] -
@akrun,谢谢 akrun,不,只是想检查列是否存在。并感谢一个班轮,真的很有帮助。