如何在两个data.frames之间找到唯一的额外列名?

时间:2015-08-06 14:39:31

标签: r

我有两个几乎相同的data.frames,我想找到添加到> colnames(x.1) [1] "listPrice" "rent" "floor" "livingArea" [5] "rooms" "published" "constructionYear" "objectType" [9] "booliId" "soldDate" "soldPrice" "url" [13] "additionalArea" "isNewConstruction" "location.namedAreas" "location.address.streetAddress" [17] "location.address.city" "location.position.latitude" "location.position.longitude" "location.region.municipalityName" [21] "location.region.countyName" "location.distance.ocean" "source.name" "source.id" [25] "source.type" "source.url" "areaSize" "priceDiff" [29] "perc.priceDiff" "sqrmPrice" > colnames(x.2) [1] "listPrice" "livingArea" "additionalArea" "plotArea" [5] "rooms" "published" "constructionYear" "objectType" [9] "booliId" "soldDate" "soldPrice" "url" [13] "isNewConstruction" "floor" "rent" "location.namedAreas" [17] "location.address.streetAddress" "location.address.city" "location.position.latitude" "location.position.longitude" [21] "location.region.municipalityName" "location.region.countyName" "location.distance.ocean" "source.name" [25] "source.id" "source.type" "source.url" "areaSize" [29] "priceDiff" "perc.priceDiff" "sqrmPrice" 对象的唯一列名。

{{1}}

2 个答案:

答案 0 :(得分:3)

您可以使用public static void main(String[] args) { /* Enter your code here. Read input from STDIN. Print outputto STDOUT. Your class should be named Solution. */ Scanner in = new Scanner(System.in); int n= in.nextInt(); int q = in.nextInt(); in.nextLine(); int[] a = new int[n+1]; for(int i=1;i<=n;i++) { a[i]= in.nextInt(); } for(int j=0;j<q;j++) { int l = in.nextInt(); int r = in.nextInt(); int sum=0; for(int k=l;k<=r ;k++) { sum = Math.abs(sum+a[k]); } if(sum%2 == 0) System.out.println("Even"); else System.out.println("Odd"); } } 获取“x.2”中的列名,而不是“x.1”中的列名

setdiff

答案 1 :(得分:2)

尝试

colnames(x.2)[!colnames(x.2) %in% colnames(x.1)]