Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.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
在RGoogleDocs中获取值而不是公式_R_Google Docs - Fatal编程技术网

在RGoogleDocs中获取值而不是公式

在RGoogleDocs中获取值而不是公式,r,google-docs,R,Google Docs,有没有一种简单的方法来读取单元格的值而不是公式? 顺便说一句,我只是在我发布的电子表格中遇到这个问题,而不是在私人的电子表格中。 因此,例如,在一个单元格中,其值是通过直接使用Google电子表格左侧单元格中的值创建的,我更希望获得该值,而不是=RC[-1] 当一个人将谷歌电子表格作为csv导出时,这种情况就不会发生 我在R中使用以下代码行 y2009<-sheetAsMatrix(ts2$y2009,header=TRUE, as.data.frame=TRUE, trim=TRUE)

有没有一种简单的方法来读取单元格的值而不是公式? 顺便说一句,我只是在我发布的电子表格中遇到这个问题,而不是在私人的电子表格中。 因此,例如,在一个单元格中,其值是通过直接使用Google电子表格左侧单元格中的值创建的,我更希望获得该值,而不是
=RC[-1]

当一个人将谷歌电子表格作为csv导出时,这种情况就不会发生

我在R中使用以下代码行

y2009<-sheetAsMatrix(ts2$y2009,header=TRUE, as.data.frame=TRUE, trim=TRUE)

y2009如果你没有偶然发现这个网页,它看起来很有用(我自己也没试过…)

看起来以前使用的包(RGoogleData)当前正在维护


祝你好运

这不是一个聪明的解决方案,但计算公式确实有效。例如,使用以下功能:

getValues <- function(x) {
    m <- apply(x, 2, function(x) as.character(x))
    for (i in 1:nrow(m)) {
        formulas <- which(substr(m[i,], 1, 4) == "=RC[")
        t <- sub('=RC[', '', m[i, formulas], fixed=TRUE)
        t <- sub(']', '', t, fixed=TRUE)
        t <- as.numeric(t)
        m[i, formulas] <- m[i, (formulas + t)]
    }
    return(m)
}

getValues原来的问题是2009-09年写的。当时我正在使用RGoogleDocs阅读谷歌电子表格。在过去的几个月里,我在加拿大不列颠哥伦比亚省发现了一个由Jennifer Bryan和Joanna Zhao积极创建和维护的名为“”的软件包。起初它只在GitHub上,现在它在Cran存储库中。它工作得很好。它有利于阅读和写作。它不会公开一个人的谷歌密码。我以前在RGoogleDocs中遇到的所有问题都被谷歌表单弄得无关紧要

实际上,该页面上的解决方案并不依赖于任何R包。只要你在公开谷歌电子表格方面没有问题,它就可以很好地工作。是的,我应该把我的想法分开。我只是说,如果那页上的信息不起作用,还有RGoogleData软件包,它目前已经失效。也许你也想看看这个:我使用的大多数电子表格都是私有的,少数是公共的。因为我处于混合环境中,所以我更喜欢在RGooglDocs中完成所有操作。抱歉,无法复制。你把所有内容都更新到最新版本了吗?@Joris Meys:不幸的是,复制在这里不是问题:)如果你制作一张私人表格,其中一些单元格链接(等于)其他单元格,你将得到
=RC[-x]
字符串而不是实际值。我使用的是最新版本的RGoogleDocs,因为我在Windows中工作,所以包中有一个二进制文件。我下载并使用了RGoogleDocs_0.4-1.zipYou可能会尝试一个更新的软件包:当然,一个智能的
regexpr
会简化函数,但不幸的是,我对正则表达式没有深入的经验:(感谢您的尝试,但它不起作用。在我最新的问题迭代中,列中的公式是=RC[-2]&“\u”&RC[-1]。它非常简单。它将单元格2的内容向左粘贴到单元格1的内容向左粘贴,并在两个字符值之间添加下划线。我可以轻松地在R中复制它,但它仍然无法解决我的基本问题,即RGoogleDocs导入公式而不是公式的值。spreadsh我今天尝试的eet已经发布,所以任何有链接的人都可以查看它,但我仍然通过getGoogleAuth@Farrel:我明白了。我原以为你有所有这些简单的“函数”。稍微深一点的编码可能会“解决”你的问题,虽然我不知道是什么原因导致了这个奇怪的事件。我稍后会回来看看你是否能解决这个问题!