1. ホーム
  2. r

[解決済み] R関数で複数のオブジェクトを返す【重複】について

2022-04-23 12:30:32

質問

R関数で複数のオブジェクトを返すにはどうしたらいいですか?Java であれば、Class を作ります。 Person これはいくつかのプライベート変数を持ち、カプセル化する、多分。 height , age など。

しかし、Rでは、データのグループを渡す必要があります。たとえば、あるR関数が文字のリストと整数の両方を返すようにするにはどうしたらいいでしょうか?

どのように解決するのですか?

他の多くの言語と異なり、Rの関数は厳密な意味での複数のオブジェクトを返しません。 最も一般的な扱い方は list オブジェクトを作成します。 ですから、もし整数の foo と文字列のベクトル bar を関数に組み込むと、これらを組み合わせたリストを作成することができます。

foo <- 12
bar <- c("a", "b", "e")
newList <- list("integer" = foo, "names" = bar)

次に return このリスト

関数を呼び出した後、これらのそれぞれに対して newList$integer または newList$names .

他のオブジェクトタイプは様々な目的でより効果的に機能するかもしれませんが list オブジェクトは、手始めとして良い方法です。