2016-05-09 2 views
1

順序付き変数とすべてのz3を組み合わせた3番目の変数(Z1、Z2)をすべて組み合わせて生成しようとしています。順序付きペアと3番目の変数を含むグリッドを展開する

theta <- seq(0, 2*pi, length = 5) 
z1 <- cos(theta) ;z2 <- sin(theta) 
z3 <- seq(-3, 3, length = 5) 

私は普通expand.grid機能を使用しますが、ここで、それは順序を破壊する三つの変数の組み合わせを生成しますので、これは適切ではありません。私はこれを行うことができるRの機能があるのだろうかと疑問に思っていましたか?すべての助けが大変ありがとうございます。

答えて

1

We paste 'z1'と 'z2'を入力し、 'z3'を使用してexpand.gridを行います。出力( 'd1')から、 'Var1'つまりpaste個のベクトルを2つの列に分割します。

d1 <- expand.grid(paste(z1,z2), z3) 
transform(read.table(text=as.character(d1$Var1), header=FALSE), V3= d1$Var2) 
3

別の方法:

library(tidyr) 
df <- data.frame(z1, z2, z3) 
expand(df, nesting(z1, z2), z3) 
+1

また、非常にきれい。ありがとうございました。 – JohnK

関連する問題