Ich habe den Datenrahmen (nur ein Beispiel)Wie gruppiere ich ndarray?
D = pd.DataFrame({i: {"name": str(i),
"vector": np.arange(i + i % 4, i + i % 4 + 10),
"sq": i ** 2,
"gp": i % 2} for i in range(10)}).T
gp name sq vector
0 0 0 0 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
1 1 1 1 [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
2 0 2 4 [4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
3 1 3 9 [6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
4 0 4 16 [4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
5 1 5 25 [6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
6 0 6 36 [8, 9, 10, 11, 12, 13, 14, 15, 16, 17]
7 1 7 49 [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
8 0 8 64 [8, 9, 10, 11, 12, 13, 14, 15, 16, 17]
9 1 9 81 [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
und ich mag von dem Spaltenvektor zu gruppieren und dann Spalte gp. Wie kann ich das machen?
from dfply import *
D >>\
groupby(X.vector, X.gp) >>\
summarize(b=X.sq.sum())
Ergebnisse in
TypeError: unhashable type: 'numpy.ndarray'
Auch das funktioniert für mich. – piRSquared