这是我在csv中导入并在R中导入的示例数据。
Rowid parcel no crop area Area insured
1 122 cotton 0.9 1.2
2 111 soya 0.8 1.1
3 111 cotton 1.2 1.6
4 23 soya 0.7 1.5
5 45 cotton 0.23 1.3
6 45 soya 1.6 1.0
我想安排它
parcel no crop area Area insured crop area. Area insured
122 cotton 0.9 1.2
111 soya 0.8 1.1 cotton 1.2 1.6
23 soya 0.7 1.5
45 cotton 0.23 1.3 soya 1.6 .01
我在徘徊,我怎么能得到上面提到的结果。在R中有可能这样做吗?我有一个非常庞大的数据以这种方式安排
解决此问题的一种方法是提取具有重复宗地的行,然后合并。我这样做是为了一个最小的例子:
df<-data.frame(c(11,11,12,13,13),c("a","b","c","d","a"))
names(df)<-c("parcel","crop")
df1<-df[duplicated(df$parcel),]
df2<-df[!duplicated(df$parcel),]
merge(df2,df1,by="parcel",all.x=T,all.y=T)
你得到了输出
parcel crop.x crop.y
1 11 a b
2 12 c <NA>
3 13 d a
其中NA表示示例中的空单元格。这会解决您的问题吗?