コメントの中で言及されているように、これの多くは、1日の終わりに答えることができる質問の種類によって異なります。配列が各行内で同じ長さを持つという事実を利用する潜在的に意味のある表現の1つの例は、$ i $番目の行$ m_i $回を繰り返す配列に沿って製品を取ることです。
In [12]: from itertools import chain
In [13]: df = pd.DataFrame({'a': [5, 7, 1], 'b': [1, 3, 2], 'c': [10, 1, 1], 'X': [[10, 10], [10, 20, 30], [4, 5]], 'Y': [[20
...: , 30], [1, 4, 5], [0, 1]], 'Z': [[0, 3], [0, 1, 2], [50, 60]]})
In [14]: df
Out[14]:
X Y Z a b c
0 [10, 10] [20, 30] [0, 3] 5 1 10
1 [10, 20, 30] [1, 4, 5] [0, 1, 2] 7 3 1
2 [4, 5] [0, 1] [50, 60] 1 2 1
In [15]: pd.DataFrame({
...: 'a': np.repeat(df.a.values, df.X.apply(len)),
...: 'b': np.repeat(df.b.values, df.X.apply(len)),
...: 'c': np.repeat(df.c.values, df.X.apply(len)),
...: 'X': list(chain.from_iterable(df.X)),
...: 'Y': list(chain.from_iterable(df.Y)),
...: 'Z': list(chain.from_iterable(df.Z))})
...:
Out[15]:
X Y Z a b c
0 10 20 0 5 1 10
1 10 30 3 5 1 10
2 10 1 0 7 3 1
3 20 4 1 7 3 1
4 30 5 2 7 3 1
5 4 0 50 1 2 1
6 5 1 60 1 2 1
これはアレイが列間で一致を長という事実は、アレイ自体が同等の要素単位であることを意味することを想定しています。
行間の配列のインデックス値には何か関係はありますか?つまり、例えばある行の 'X'配列の最初の要素は、他の行の' X'配列の最初の要素と匹敵していますか?そして、配列はどれくらいですか?データフレームはどのような種類の操作をサポートする必要がありますか? – fuglede
X、Y、Zは点の座標のような関連属性であり、各測定値iは最大256個の点を有する。 a、b、cは、例えば、以下のような測定の他のパラメータである。 a =温度、b =電圧、c = number_of_points。 2つの測定値間のポイントは多少関連しますが、強くは関係ありません。 – embedded42
私がすることになっているクエリは次のようなものです: 1)整合性チェック、各測定iのnumber_of_point cはX、Y、Z配列の実際の長さに等しい 2)例えばXがある値より大きいすべての測定を選択してください 3)プロパティを確認してください。 a = 1の場合、X <5 – embedded42