示例数据:
Sales <- data.frame(Appliance = c("Laptop", "TV", "Fridge","TV", "TV", "TV","Laptop", "Laptop", "Radio"), ID=c( "1", "1", "1", "1", "2", "2", "2", "3", "3"))
IDLocation <-data.frame(ID=1, Location="UK")
我使用内部联接联接两个表:
IDLocationSales<-merge(Sales, IDLocation, by.x="ID", by.y="ID")
然后我创建一个表以显示通过内部联接创建的表中的ID数量。
CountofIDs<-table(IDLocationSales$ID, dnn=("CountOfIDs"))
View(CountofIDs)
问题是,在CountofIDs表中它包含所有ID(1-3),而在我作为合并结果(IDLocationSales)创建的实际表中,只有ID号。 1个礼物。只有其中具有ID 1-3的sales表。如何创建仅引用合并表中实际数据的CountofIDs表?
答案 0 :(得分:0)
您的ID
变量是一个因子变量。合并不会降低因子的水平。您需要通过在合并之后但在调用table()
之前运行以下代码来明确地做到这一点:
IDLocationSales$ID <- droplevels(IDLocationSales$ID)