私はRを初めて使用しています/データを簡単に再編成するオプションがあり、解決策を探しましたが、やりたいことを正確に見つけることができません. Reshape2 のメルト/キャストはうまく機能していないようで、ここに含めるほど十分に plyr を習得していません。
基本的に、以下に概説する構造を持つdata.frameがあり、各要素がカテゴリの可変長リストであるカテゴリ列があります(#列がはるかに大きいため、よりコンパクトであり、実際に複数のcategory_listsを持っています別々にしておくのが好きです):
>mydf
ID category_list xval yval
1 ID1 cat1, cat2, cat3 xnum1 ynum1
2 ID2 cat2, cat3 xnum2 ynum2
3 ID3 cat1 xnum3 ynum3
因子としてカテゴリ (および関連する値、つまり列 3/4) を操作したいので、ID と x/y/その他の列の値がカテゴリ リストの長さ:
ID category xval yval
1 ID1 cat1 xnum1 ynum1
2 ID1 cat2 xnum1 ynum1
3 ID1 cat3 xnum1 ynum1
4 ID2 cat2 xnum2 ynum2
5 ID2 cat3 xnum2 ynum2
6 ID3 cat3 xnum2 ynum2
category_list に factor/facet の別の解決策がある場合、それはより簡単な解決策になりますが、これをサポートするメソッドに遭遇していません。たとえば、次のようにエラーがスローされます。
>ggplot(mydf, aes(x=x, y=y)) + geom_point() + facet_grid(~cat_list)
layout_base(data, cols, drop = drop) のエラー: 少なくとも 1 つのレイヤーに、ファセットに使用されるすべての変数が含まれている必要があります
ありがとう!