2016-02-16 2 views
0

У меня есть цикл for. На каждой итерации создается dataframe. Я хочу, чтобы этот фреймворк был добавлен к общему кадру данных.append to empty dataframe итеративно

В настоящее время я пытался сделать это с помощью этого кода:

resultDf = pd.DataFrame() 
for name in list: 
    iterationresult = calculatesomething(name) 
    resultDf.append(iterationresult) 
print(resultDf) 

Однако resultDf пуст.

Как это можно сделать?

UPDATE

Я думаю, что изменение

resultDf.append(iterationresult) 

в

resultDf = resultDf.append(iterationresult) 

делает трюк

ответ

0

Не итеративный, но как насчет просто:

df = pd.DataFrame([calculatesomething(name) for name in list]) 

Это намного проще и быстрее.

Другой идиоматическая идея могла бы сделать это:

df = pd.DataFrame(list, columns = ["name"]) 
df["calc"] = df.name.map(calculatesomething) 

Кстати, это плохая практика, чтобы вызвать listlist, потому что он будет затенять встроенный тип.

Смежные вопросы