.all()
- это функция, которая применяется ко всему Series
, а не к одному row
. Вы смешиваете понятия здесь. Чтобы сделать построчное сравнение (как вы хотите):
myseries = []
for idx, row in data.iterrows():
if row['democrat'] >= row['republican']:
myseries.append(row['republican'])
else:
myseries.append(row['republican'] - row['votestowin'])
data['rwasted'] = pd.Series(myseries)
См. Ответ @ 9769953 для более краткого способа применения его в кадре данных, но это аналог вашего 114] подход
Существует хорошая статья о средстве выделения: Основы для Масштабируемого Многоядерного программного обеспечения в Intel, Распараллеливающей Стандартные блоки
Мой ограниченный опыт: Я перегрузил глобальное новое/удал с tbb:: scalable_allocator для моего приложения AI. Но в профиле времени было мало изменения. Я не сравнил использование памяти все же.