2016-11-07 8 views
-2

関数内からオブジェクトをクラスに割り当てようとしましたが、成功しませんでした。関数内からオブジェクトをクラスに割り当てるR

 a <- 1 
     f <- function(x){class(x) <- "first"} 
     f(a) 
     class(a) 
     [1] "numeric" 

なぜ割り当てが機能しないのかわかりません。どうしてあなたが私のことを説明でき、関数の中からオブジェクトのクラスを変更する方法を教えてください。ありがとうございました。

+1

ヒント:適切な環境に割り当てる必要があります。その他のヒント:これは良い考えではありません。 –

答えて

0

@Richはコメントでほのめかしたように、この

a <- 1 

f <- function(x){ structure(x, class = "first") } 
b <- f(a) 
class(b) 
[1] "first" 

を試してみてください、あなたは新しいオブジェクトを定義していなかったので、あなたはclass(a)をしたとき、それだけであった、バックaのあなたの元の定義を行っていました(af(a)に再定義したことがないため)。

関連する問題