Database 比较两个表之间的数据

Database 比较两个表之间的数据,database,r,Database,R,我有两个数据表: 表A包含交通事故,表B包含道路上的一些点(例如十字路口) 我的想法是在组B的点周围创建正方形区域,并查找组A在这些区域发生的事故 我使用的是KROVAK坐标,因此示例如下: 第1步:与首席运营官一起从B组获得分数。(X=1800050 Y=6000050) 步骤2:在该点周围创建正方形区域(a=50m) 面积大小为:X=(1800000;1800100) Y=(6000000;6000100) 步骤3:A组的点是否在该区域(X和Y是否属于该间隔)? 最后我的问题是:是否可以在

我有两个数据表: 表
A
包含交通事故,表
B
包含道路上的一些点(例如十字路口)

我的想法是在组
B
的点周围创建正方形区域,并查找组
A
在这些区域发生的事故

我使用的是KROVAK坐标,因此示例如下:

第1步:与首席运营官一起从B组获得分数。(X=1800050 Y=6000050)
步骤2:在该点周围创建正方形区域(a=50m)
面积大小为:X=(1800000;1800100)
Y=(6000000;6000100)
步骤3:A组的点是否在该区域(X和Y是否属于该间隔)?

最后我的问题是:是否可以在R中比较这两个表(组
A
,组
B
)之间的数据?有谁能给我一些建议,如何在两个表之间进行间隔比较?非常感谢。:-)evz应该可以使用sqldf。如果查看中的示例11,您会看到两个数据库表由使用邻近性的计算字段连接:

seqdf <- data.frame(thetime=seq(100,225,5),thevalue=factor(letters))
boundsdf <- data.frame(thestart=c(110,160,200), theend=c(130,180,220), groupID=c(555,666,777))
testquery_1 <- sqldf("select seqdf.thetime, seqdf.thevalue, boundsdf.groupID 
from seqdf left join boundsdf on (seqdf.thetime <= boundsdf.theend) and (seqdf.thetime >= boundsdf.thestart)")

seqdf您是在请求返回特定结果的SQL命令吗?只要说你想在两个表之间“比较数据”,读者就会产生很大的想象力。你的问题已经使用了
数据库
标签。您所说的“表”是数据库表(如果是,在什么类型的数据库中?)还是R变量?是的,我要求使用SQL命令来比较两个表之间的数据,如果这些数据属于同一个区域,我想在表A的新列中从组B复制ID。(在一个区域中可能发生多个事故,一个事故只能在一个区域中发生)R有几种使用SQL语法处理表的机制。请尝试安装
sqldf
库,加载它并完成示例。这将是一个
join
操作,使用两个条件计算“where”条件。我认为反对票是那些对您没有提供数据示例进行任何测试感到不满的人。作为第一步,应添加表A中的“新列”(到每个记录!),保留空值或一些“神奇值”,这意味着记录从未从表B中更新过。请给出表的数据定义,至少针对与此任务相关的列。然后可以制定SQL
update
查询,将表A中的“新列”设置为表B中所需的值。
boundsdf2 <- data.frame(loc = c(120,170,210), groupID=boundsdf$groupID)
testquery_2 <- sqldf("select seqdf.thetime, seqdf.thevalue, boundsdf2.groupID 
from seqdf left join boundsdf2 on ( abs(seqdf.thetime-boundsdf2.loc) <=10 ) ")
 #-----------
 > identical(testquery_2, testquery_1)
 [1] TRUE