Ich habe einen sehr großen Datenrahmen (ca. 1 Million Zeilen) mit Daten aus einem Experiment (60 Befragte).
Ich möchte den Datenrahmen in 60 Datenrahmen aufteilen (einen Datenrahmen für jeden Teilnehmer).
Im Datenrahmen data
gibt es eine Variable namens 'name'
, die den eindeutigen Code für jeden Teilnehmer darstellt.
Ich habe Folgendes versucht, aber es passiert nichts (oder die Ausführung wird nicht innerhalb einer Stunde beendet). Was ich vorhabe, ist, die data
in kleinere Datenrahmen aufzuteilen und diese an eine Liste anzuhängen ( datalist
):
import pandas as pd
def splitframe(data, name='name'):
n = data[name][0]
df = pd.DataFrame(columns=data.columns)
datalist = []
for i in range(len(data)):
if data[name][i] == n:
df = df.append(data.iloc[i])
else:
datalist.append(df)
df = pd.DataFrame(columns=data.columns)
n = data[name][i]
df = df.append(data.iloc[i])
return datalist
Ich erhalte keine Fehlermeldung, das Skript scheint nur für immer zu laufen!
Gibt es eine clevere Möglichkeit, dies zu tun?