与R中
合并命令连接表我有两个表,我想加入使用列“SPENO”,但我收到此错误:与R中
Error in fix.by(by.x, x) : 'by' must specify a uniquely valid column
下面是我使用的命令:
setwd("P:/Users/Richmond/PEP_tagData")
read.csv("pepdeployments.csv", header=TRUE)
read.csv("pepdeployments_endDate.csv", header=TRUE)
pep_deploy1 <- "pepdeployments.csv"
pep_deploy2 <- "pepdeployments_endDate.csv"
combined <- merge(x=pep_deploy1,y=pep_deploy2,by.x="SPENO",by.y="SPENO")
关于我在做什么的任何建议是错误的?谢谢。
您没有正确读取您的数据。您需要将read.csv(...)
分配给对象
setwd("P:/Users/Richmond/PEP_tagData")
pep_deploy1 <- read.csv("pepdeployments.csv", header=TRUE)
pep_deploy2 <- read.csv("pepdeployments_endDate.csv", header=TRUE)
combined <- merge(x=pep_deploy1,y=pep_deploy2,by.x="SPENO",by.y="SPENO")
你在做什么是:
阅读在.csv文件,而只是将它打印到控制台。它没有被分配到任何对象:
read.csv("pepdeployments.csv", header=TRUE)
read.csv("pepdeployments_endDate.csv", header=TRUE)
然后分配字符串pepdeployments.csv
和pepdeployments_endDate.csv
的对象。所以你的对象只是那些字符串,而不是数据。
pep_deploy1 <- "pepdeployments.csv"
pep_deploy2 <- "pepdeployments_endDate.csv"
好的,那可行。并感谢提示! – biscuit
@biscuit - 不客气。很高兴我能帮上忙。 – SymbolixAU
在仔细观察之后,看起来新数据表对于从y = pep_deploy2加入/合并的所有字段具有NA值。 – biscuit
您应该添加一个标签,指出您正在使用的语言。这将允许合适的人选择问题。 – nbryans
我正在使用R语言。谢谢你的提示! – biscuit
'merge()'当你指定一个不存在于它所应用的输入数据框中的列名时,抛出那个特定的错误信息。因此,列名“SPENO”可能不存在于一个或两个数据框中。 – bgoldst