gpt4 book ai didi

perl - 使用 R 包 gdata 时的路径规范

转载 作者:行者123 更新时间:2023-12-01 13:32:44 24 4
gpt4 key购买 nike

问题:使用 gdata 将 .xls 读入 R 时帮助程序失败

我有一些我想读入 R 的 .xls。我可以使用 gdata 包中的 read.xls 来这样做,但是 helper函数 sheetNamessheetCount 失败 - 我想了解我做错了什么,以便我可以使用它们,因为它们非常有用。

require(gdata)
fp <- file.path('~/data/first.xls')

当我知道工作表的结构,并且能够将其指向我想要的数据表时,perl 脚本运行得很好:

firstdata <- read.xls(fp, sheet=2)

我有我的数据...在 firstdata 中。

然而,在同一张纸上,助手失败了。

我发现自己在 excel 中打开 .xls,弄清楚它们,然后使用 read.xls(fp, sheet=N) 加载到 R - 不是灾难,但也不是理想的。

特别是,当工作表不是我自己的,并且我需要有关它们的信息才能在 read.xls() 中设置 sheet=N 时,助手函数 sheetNamessheetCount 会非常有用,但是它们失败了——为什么?

sheetCount(fp)

> sheetNames(fp)
Error in read.table(tc, as.is = TRUE, header = FALSE) :
no lines available in input
In addition: Warning message:
running command ''/usr/bin/perl' '~/R/wd/raRpackages/gdata/perl/sheetNames.pl' '~/data/first.xls'' had status 2
Unable to open file '~/data/first.xls'.

和:

> sheetCount(fp)
Error in read.table(tc, as.is = TRUE, header = FALSE) :
no lines available in input
In addition: Warning message:
running command ''/usr/bin/perl' '~/R/wd/raRpackages/gdata/perl/sheetCount.pl' '~/data/first.xls'' had status 2
Unable to open file '~/data/first.xls'.

经过一番摆弄后,我(很偶然地)发现使用完整路径可以解决这个问题:

fp2 <- file.path("/Users/ricardo/data/first.xls")
sheetcount(fp2)
[1] 13

最佳答案

看起来 ~ 没有扩展到您的主目录。这种扩展通常由 shell 完成,因此 R 可能不会这样做,而 perl 肯定不会。

相反,在 Perl 程序中使用显式路径或 $HOME$ENV{HOME}

关于perl - 使用 R 包 gdata 时的路径规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11737906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com