R のデータセット全体に関数を適用するための 2 つの部分からなる質問があります。
i)最初に、cbind関数のようなものが各データフレームの最初の列を並べて並べ、次に2番目の列を並べるように、2つのデータフレームを繰り返し組み合わせてペアにしたい. 以下の例では、列の順序が eg1、eg4、eg2、eg5、eg3、eg6 の df1 と df2 を組み合わせた出力が必要です。
eg1 <- as.data.frame(matrix(sample(0:1000, 36*10, replace=TRUE), ncol=1))
eg2 <- as.data.frame(matrix(sample(0:500, 36*10, replace=TRUE), ncol=1))
eg3 <- as.data.frame(matrix(sample(0:750, 36*10, replace=TRUE), ncol=1))
df1 <- cbind(eg1,eg2,eg3)
eg4 <- as.data.frame(matrix(sample(0:200, 36*10, replace=TRUE), ncol=1))
eg5 <- as.data.frame(matrix(sample(0:100, 36*10, replace=TRUE), ncol=1))
eg6 <- as.data.frame(matrix(sample(0:350, 36*10, replace=TRUE), ncol=1))
df2 <- cbind(eg4,eg5,eg6)
私はこれを手動で行う方法を知っていますが(以下)、これははるかに大きなデータセットを組み合わせる場合には理想的ではなく、これを達成するためのより効率的な方法があるかどうか疑問に思っていましたか?
df3 <- cbind(df1,df2)
df3 <- df3[,c(1,4,2,5,3,6)]
(ii)これに続いて、対応する偶数列の7つの最高値に基づいて、各奇数列に7つの値を出力したいと思います。例として、最初の 2 つの列については...
df4 <- df3[,1:2]
High_7 <- tail(df4[order(df4[,2]),],7)#Highest 7 values in even column
High_7 <- High_7[,1] #Select odd column values
しかし、データセット全体でこれを使用する例では、何らかの形の適用関数を使用する方がはるかに効果的です。