0

2 つのリストがあるとします。

  a = list(1,2)
  b = list("x","y")
        #a
        #[[1]]
        #[1] 1

        #[[2]]
        #[1] 2

        #b
        #[[1]]
        #[1] "x"

        #[[2]]
        #[1] "y"

次の結果が欲しいです。

        #[[1]]
        #[1] "1x"

        #[[2]]
        #[1] "2y"

私は次のことを試しました:

  lapply(a, paste, b)

しかし、結果は私が期待したものではありませんでした:

        #[[1]]
        #[1] "1 x" "1 y"

        #[[2]]
        #[1] "2 x" "2 y"

追加のパッケージやループに頼らずに、目的の結果を得る方法があるかどうか疑問に思います。

前もって感謝します!!!

4

2 に答える 2

3

ここに1つの提案があります:

as.list(paste(a,b, sep=""))
[[1]]
[1] "1x"

[[2]]
[1] "2y"
于 2012-05-15T05:59:11.627 に答える
0

ジガーの答えは正しいですが、あなたの試みた解決策に取り組みたいと思いました。あなたは 1 ヤード ラインにいたので、タッチ ダウンのためにそれを実行します。lapply にセパレーターを指定しなかったため、貼り付けはデフォルトを使用します" "。その区切り記号 ( sep="") を指定するか、paste0(R バージョン <= 2.15 で利用可能な) より適切に使用して、既定で""区切り記号を使用します。

a = list(1,2)
b = list("x","y")

lapply(a, paste, b, sep="")
lapply(a, paste0, b)
于 2012-05-15T14:00:22.900 に答える