【发布时间】:2020-02-07 19:45:10
【问题描述】:
我正在使用 R 分析一个大型数据集。
其中一个名为 EssentialSum 的数据框出现错误,其中数据输入为 station 26 midway 而不是 station 26。
我想解决这个问题,以便我可以通过Station.Name 将此表正确连接到另一个表。
我根据互联网搜索尝试了一些东西,但以下尝试没有奏效:
#using the gsub function to replace names for station 26
EssentialRep <- gsub("station 26 midway", "station 26", EssentialSum)
我得到了一个奇怪的 EssentialRep 表,只有 5 条记录,这根本不是我想要的。
#using replace function to replace names for station 26
EssentialRep <- replace(EssentialSum, Station.Name = "station 26 midway", Station.Name = "station 26")
我收到以下错误:
替换错误(EssentialSum, Station.Name = "station 26 midway", Station.Name = "station 26") : 未使用的参数(Station.Name = "station 26 midway", Station.Name = "station 26")
【问题讨论】:
-
请显示
dput(EssentialSum)在replace的第二种情况下,=将是==,并且第三个参数中不需要Station.Name =,即replace(EssentialSum, Station.Name == "station 26 midway", "station 26") -
谢谢!当我尝试您建议的替换选项时,我得到了这个:
-
[<-.data.frame(*tmp*, list, value = "station 26") 中的错误:找不到对象“Station.Name” -
这里是 EssentialSum 的结构: Telem.ID Fish.Name Date Station.Name
n()1 20160 McKenna 2016-12- 21 00:00:00 站 4 1 2 20160 麦肯纳 2016-12-22 00:00:00 站 4 1 3 20160 麦肯纳 2016-12-23 00:00:00 站 4 2 4 20160 麦肯纳 2016-12-23 00 :00:00 站 5 2 5 20160 麦肯纳 2016-12-24 00:00:00 站 4 1 6 20160 麦肯纳 2016-12-24 00:00:00 站 5 1 > -
我可以这样做,但是数据集有4600条记录,所以dput提供了大量的数据。我还应该这样做吗?