私は次のように箱ひげ図を作成するためにDataFrameGroupBy.boxplot(...)を使用することができます。 引数 "subplots = True/False"が指定されていると、DataFrameGroupBy.boxplotメソッドでエラーが発生するのはなぜですか?
:In [15]: df = pd.DataFrame({"gene_length":[100,100,100,200,200,200,300,300,300],
...: "gene_id":[1,1,1,2,2,2,3,3,3],
...: "density":[0.4,1.1,1.2,1.9,2.0,2.5,2.2,3.0,3.3],
...: "cohort":["USA","EUR","FIJ","USA","EUR","FIJ","USA","EUR","FIJ"]})
In [17]: df.groupby("cohort").boxplot(column="density",by="gene_id")
In [18]: plt.show()
これは、次の画像を生成します
これはまさに私が望むものです.3つのサブプロットを作る代わりに、すべてのプロットを1つのプロットにしたい米国、EUR、およびFIJの場合はrs)。私は
In [17]: df.groupby("cohort").boxplot(column="density",subplots=False,by="gene_id")
KeyError: 'gene_id'
私は問題はby="gene_id"
はmatplotlibのを箱ひげ図の方法に送られたキーワードがあるという事実とは何かを持っていると思うが生成されます。誰かが私が後になっているプロットを作成する良い方法を持っている場合は、DataFrame.boxplot(?)を代わりに使用して、ここで回答してください。本当にありがとう!
ありがとうございます。これは、私が作ったおもちゃのデータセット、特にSeabornライブラリにとって最適なソリューションです。残念ながら、私のデータセットは90個の遺伝子IDを持っていますので、コホートを並べて並べる余裕はありません。代わりに、彼らはお互いの上に垂直に積み重ねる必要があります。多分シーボーンはこれを許しますか? – ecneicS
@ecneicS私の答えを完了しました、それをチェックしてください –
素晴らしいです。ありがとうございました! – ecneicS