一部のセルに複数の値のリストが含まれているデータフレームがあります。セルに複数の値を格納するのではなく、データフレームを拡張して、リスト内の各項目が独自の行(他のすべての列に同じ値を持つ)を取得できるようにします。だから私が持っている場合:
import pandas as pd
import numpy as np
df = pd.DataFrame(
    {'trial_num': [1, 2, 3, 1, 2, 3],
     'subject': [1, 1, 1, 2, 2, 2],
     'samples': [list(np.random.randn(3).round(2)) for i in range(6)]
    }
)
df
Out[10]: 
                 samples  subject  trial_num
0    [0.57, -0.83, 1.44]        1          1
1    [-0.01, 1.13, 0.36]        1          2
2   [1.18, -1.46, -0.94]        1          3
3  [-0.08, -4.22, -2.05]        2          1
4     [0.72, 0.79, 0.53]        2          2
5    [0.4, -0.32, -0.13]        2          3
長い形式に変換するにはどうすればよいですか。
   subject  trial_num  sample  sample_num
0        1          1    0.57           0
1        1          1   -0.83           1
2        1          1    1.44           2
3        1          2   -0.01           0
4        1          2    1.13           1
5        1          2    0.36           2
6        1          3    1.18           0
# etc.
インデックスは重要ではありません。既存の列をインデックスとして設定しても問題はなく、最終的な順序は重要ではありません。
df.explode('samples')、これを解決するためにも使用できます。explode現時点では、1つの列の分解のみをサポートできます。