0

ディレクトリからデータを読み取るこのスクリプトがあります。関数からのデータと出力をgetwdコンソールに出力したいと思います。ただし、最後のステートメントからの出力のみが印刷されます。それはなぜですか? また、すべてのステートメントをコンソールに出力するにはどうすればよいですか?

これが私の機能です

#!/usr/bin/env Rscript
getmonitor <- function(id, directory, summarize=FALSE)
{
    target <- paste(directory, id, '.csv', sep="")
    target 
    dt <- read.csv(target, header=TRUE)
    dt 
    getwd()
}

getmonitor('001', './specdata/')

私が望んでいたのは、最初に(からのdt)出力を確認し、次に作業ディレクトリを確認することでした。

4

1 に答える 1

3

printそれらをステートメントで明示的にラップする必要があります。これがgetwd()関数から返され、getmonitor終了時に出力されます。

getmonitor <- function(id, directory, summarize=FALSE)
{
    target <- paste(directory, id, '.csv', sep="")
    print(target) 
    dt <- read.csv(target, header=TRUE)
    print(dt) 
    print(getwd())
    return(dt)
}

getmonitor('001', './specdata/')

dt関数の外で必要なものかもしれないと思ったので、私が戻ったことに注意してください。関数内に出力する必要があるだけの場合はreturn(NULL)、最後に使用できます。

于 2013-10-20T09:32:17.967 に答える