とデータフレームにあるリストの各要素は、私はこのような要素のリストを含むデータフレームを持っている: パイソン:プロットseaborn facetWrap
I 10の刺激値と刺激あたり16回の試験を持っています。リストには、スパイクトレインのスパイク振幅値が含まれています。したがって、例えばある場合。 2つの値33と34のリストで、私のアルゴリズムは33mVと34mVの2つのスパイクを見つけました。私は自分のデータの印象を得るためにこれらの値をすべてプロットしたいと思います。
現在、私は明らかにそれが平均(すべての値をプロットだけリストごとにしないのですか?最初にこのプロットに
flatui = ["#9b59b6", "#3498db", "#95a5a6", "#e74c3c", "#34495e", "#2ecc71"]
g = sns.FacetGrid(df, col='stimulus', col_wrap=5, sharey=True, sharex=True)
g.map(sns.swarmplot, 'trial', 'data', edgecolor="black", linewidth=.9, palette=flatui)
g.set_axis_labels('trials', '[ms]')
を取得するためにこれらのコード行を使用しています?私は、知らない)。一度にすべてをプロットできるように助けてくれますか?
それについて考えて
trial_vec = np.tile(np.arange(16)+1, 10)
stimulus_vec = np.repeat([-2., -1.75, -1., -0.75, -0.5, 0.5, 1., 1.25, 1.75, 2.5 ], 16)
data_vec = np.random.randint(0, 16, size=160)
spi_amp = pd.DataFrame({'trial': trial_vec, 'stimulus': stimulus_vec, 'data': data_vec}).astype('object')
spi_amp["data"] = [np.random.rand(4).tolist() for i in range(160)]
spi_amp
を。なぜここにいないの?それがなければ、問題を理解することも本当に難しいです。 – ImportanceOfBeingErnest
私は同意します。理由は、データフレームに2次元のリストを入れて、私が持っているデータを複製できる方法を知らないからです。私はこのようなデータベクトルを作成しました:np.random.random((160、4))しかし、パンダは2次元配列を受け入れません。 –
'df = pd.DataFrame({" x ":np.linspace(0,1,50)})のようなものを試してみてください。 df ["listcol"] = [np.random.rand(4).tolist()for i in range(50)] '。 – ImportanceOfBeingErnest