Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 字符值问题_R - Fatal编程技术网

R 字符值问题

R 字符值问题,r,R,我在使用FBI犯罪数据时遇到了一个奇怪的问题。在同一个州,有一些城市/城镇具有相同的名称,因此使用“县”来分隔这些值。在2003-2017年期间,大约有1700个价值观也有县。然而,当我尝试将这个数据集与另一个数据集连接,或者甚至按一个县(例如,county==“york county”)进行筛选时,我只会得到六个值/行,而我应该得到48。我已经将它们全部改为小写,并且尝试过修剪(如果有空格的话)并以.character()的形式运行,但是我仍然得到相同的行为。奇怪的是,它返回了一些值,但不是全

我在使用FBI犯罪数据时遇到了一个奇怪的问题。在同一个州,有一些城市/城镇具有相同的名称,因此使用“县”来分隔这些值。在2003-2017年期间,大约有1700个价值观也有县。然而,当我尝试将这个数据集与另一个数据集连接,或者甚至按一个县(例如,county==“york county”)进行筛选时,我只会得到六个值/行,而我应该得到48。我已经将它们全部改为小写,并且尝试过修剪(如果有空格的话)并以.character()的形式运行,但是我仍然得到相同的行为。奇怪的是,它返回了一些值,但不是全部。有什么想法吗

如果我试着跑步

data%>%过滤器(COUNTY==“adams COUNTY”)
它将只返回两个值:conewago和cumberland

我使用下面的代码将带有县的数据值与没有县的数据值(在这种情况下,将有一个NA)进行剪切,然后确保删除空白

crime.06_17.slice <- crime.06_17%>%arrange(COUNTY)%>%slice(1:1758)
crime.06_17.slice$COUNTY <- trimws(crime.06_17.slice$COUNTY, which = c("both"), whitespace = "[\t\r\n]")

如果查看
dput
中的数据,您可以看到所有亚当斯县条目都有一个前导空格:
“亚当斯县”

你应该删减空白。既然你说你已经试过了,那就确保你指定了修改(删减)的结果,并对其进行验证。(N.B.当你验证某个东西时,查看实际数据,确保它是你认为的。在你的帖子中,你说“那么我确保删除空白,”但显然,这并不成功。)


为什么你的尝试没有成功?
trimws
接受两个参数,
x
哪个
。您给它三个参数,这会导致错误:

trimws(data$COUNTY, which = c("both"), whitespace = "[\t\r\n]")
# Error in trimws(data$COUNTY, which = c("both"), whitespace = "[\t\r\n]") : 
#   unused argument (whitespace = "[\t\r\n]")

当出现错误时,代码不会执行。(这与警告不同,在警告中,代码会执行,但会告诉您可能是错误的。)因此,由于您添加了额外的参数,
,whitespace=“[\t\r\n]”
,您的代码没有运行。如果删除该参数,错误将消失,您的代码可能工作正常。

“有什么想法吗?”如果你给出一个答案会更容易回答。有关如何回答的一些提示,请参阅。事实上,你的问题不可能回答,因为我们不知道你的数据是什么样子,也不知道你在使用它做什么。吉米,如果这是你在中提供的相同示例数据,请将该块复制到这里(不要只是链接到它)。这也有助于了解其他数据集(要合并)的外观。运行命令时是否收到任何错误或警告?能否显示实际运行的命令?如果它们以因素开头,则可能修改失败,然后以.character()的形式运行(太晚了)使修改成为可能。但是您的数据或代码中有一些奇怪的地方,除非您向我们展示这两个方面,否则我们无法为您提供太多帮助。很抱歉,没有包含一个可复制的示例;我认为这可能是有人以前遇到的问题。现在已经包括在内。感谢您发布一些数据。我投票重新打开了。这可能是一个问题有人遇到的问题。可能所有认真的R用户都遇到过这样一个问题,即以某种方式过滤数据帧所产生的行数远远少于预期。问题是,如果不了解更多信息,就无法说出发生在您身上的原因。这种行为背后可能有多种原因。
trimws(data$COUNTY, which = c("both"), whitespace = "[\t\r\n]")
# Error in trimws(data$COUNTY, which = c("both"), whitespace = "[\t\r\n]") : 
#   unused argument (whitespace = "[\t\r\n]")