混乱のタイトル、申し訳ありません、別のDFに含まれているDFの各変数のクラスのリストを印刷しようとしています。変数のDFリストに基づいてDFの各変数のクラスを読むR
DF1 I出力するにはどうすればよいの異なる種類(変数1、変数2、など)
(1列目のVariable1name、variable2name、variable3name、など)15個の変数のDF2 =リスト
の= 50個の変数DF2の名前に基づいてDF1の変数のクラス?
私は、これはそれを行うだろうと思った:
class(DF1[,DF2[1,]])
Butit doesntの仕事。
DF2 [1、]は正しい名前を表示しますが、DF2の他のすべての名前をリストした18のレベルを持っていると言います...私はこの間違いを考えていますか?
目標は、因子変数である場合はDF1のすべての列を調べ、因子のレベルを変数に取得することです。より多くのコード
vartype=matrix(0,nrow=nrow(DF2),ncol=1)
for (i in 1:nrow(DF2))
{
temp=class(DF1[,DF2[i,]])
if (temp=="Factor")
{
DF2[i]=1;
}
}
varmap=list();
length(varmap)=nrow(DF2);
for (i in 1:nrow(DF2))
{
if (DF2[i]=="factor")
{
varmap[[i]]=unique(DF1[,DF2[i]])
}
}
一部のデータ:DF2はDF1
のデータ型編集だろう、私はあなたが何をしたいと思います
DF1 <- data.frame(
X = sample(1:10),
Y = sample(c("yes", "no"), 10, replace = TRUE)
)
str(Data)
DF2=as.data.frame(c("X","Y"))
'DF2'はすべての列名を持つ最初の列を持っていると仮定して(OPの説明の' 1列目など 'に基づいて)' sapply(DF1 [as.character(DF2 [、1])]クラス) 。しかし、コードからは、最初の行のように見えます。その場合、 'sapply(DF1 [as.character(unlist(DF2 [1、]))]クラス)' – akrun
シンプルな[再現可能な例](http://stackoverflow.com/questions/5963269/how make-a-great-r-reproducible-example)は、可能なソリューションをより簡単にテストすることができます。 – MrFlick
さらにコードとデータを追加 –