R 错误:尝试使用零长度变量名
在未打开任何文件的情况下,打开Rstudio时出现以下错误: “错误:尝试使用零长度变量名” 我的所有命令都被忽略(即,没有发生任何事情,没有警告,R对我所做的任何事情都没有响应),我尝试了rm和gc选项,使其不可用,并更新到了Rstudio和R的最新版本,但仍然出现此错误R 错误:尝试使用零长度变量名,r,R,在未打开任何文件的情况下,打开Rstudio时出现以下错误: “错误:尝试使用零长度变量名” 我的所有命令都被忽略(即,没有发生任何事情,没有警告,R对我所做的任何事情都没有响应),我尝试了rm和gc选项,使其不可用,并更新到了Rstudio和R的最新版本,但仍然出现此错误 我正在运行windows 7(64位)。我收到了相同的错误消息,它与从Hadley的readr软件包中读取csv()有关。如果我这样做: cyt <- read_csv(fil) cyt2 <- cyt %>
我正在运行windows 7(64位)。我收到了相同的错误消息,它与从Hadley的readr软件包中读取csv()有关。如果我这样做:
cyt <- read_csv(fil)
cyt2 <- cyt %>% filter(EPID == 10030001)
cyt我在上发布了一个问题。我可以使用下面的代码重现结果。这与csv是否包含没有标题的行名列有关read_csv
和read.csv
以不同的方式处理此问题,从而使用过滤器产生不同的结果
当它工作时,首先检查案例
write_csv
至read_csv
或read.csv
;使用filter
library(readr)
library(dplyr)
mtcars %>% write_csv("~/Desktop/test.csv")
test_r <- read_csv("~/Desktop/test.csv") %>% filter(hp>100)
test.r <- read.csv("~/Desktop/test.csv") %>% filter(hp>100)
同样,最大的区别在于write.csv如何生成csv
mtcars %>% write.csv("~/Desktop/test1.csv")
test1_r <- read_csv("~/Desktop/test1.csv")
test1_r %>% str()
#should fail here
test1_r %>% filter(hp>100)
test1.r <- read.csv("~/Desktop/test1.csv")
test1.r %>% str()
test1.r %>% filter(hp>100)
或者,如果您控制csv创建步骤,则可以将选项row.names=FALSE
添加到write.csv
mtcars %>% write.csv("~/Desktop/test2.csv", row.names = FALSE)
test2.r <- read_csv("~/Desktop/test2.csv")
test2.r %>% str()
test2.r%>% filter(hp>100)
mtcars%>%write.csv(“~/Desktop/test2.csv”,row.names=FALSE)
test2.r%str()
test2.r%>%过滤器(hp>100)
或者使用如上所示的write\u csv
。将此作为可见性的答案:如果您尝试通过在Rmd中选择all并按enter键来运行,则会发生这种情况,就像使用普通R脚本一样。RStudio试图以R代码的形式运行这些代码,包括降价部分,从而导致您看到的错误
您可以通过单击绿色播放按钮或在Rmd编辑器顶部的下拉列表中选择一个运行选项来运行单个块来避免这种情况
从“运行”下拉列表中尝试“全部运行”
什么操作系统?什么是R和RStudio版本(明确)?您是否已设置.Rprofile
文件,以便在启动时自动运行代码?这些命令究竟被忽略了多少?你看到控制台上的提示了吗?我有同样的问题,用read.csv替换它解决了。我有同样的问题problem@skeletonnoire,这解决了您的问题吗?如果您的.csv有一列没有标题,也可能发生这种情况。@data\u steve谢谢,read_csv适用于我,因为最初我使用read.csv读取文件,这也会导致此错误。
mtcars %>% write.csv("~/Desktop/test1.csv")
test1_r <- read_csv("~/Desktop/test1.csv")
test1_r %>% str()
#should fail here
test1_r %>% filter(hp>100)
test1.r <- read.csv("~/Desktop/test1.csv")
test1.r %>% str()
test1.r %>% filter(hp>100)
test1_r <- read_csv("~/Desktop/test1.csv")[-1]
mtcars %>% write.csv("~/Desktop/test2.csv", row.names = FALSE)
test2.r <- read_csv("~/Desktop/test2.csv")
test2.r %>% str()
test2.r%>% filter(hp>100)