Увеличение в Pandas

#python #pandas

#python #pandas

Вопрос:

Я хочу немного упростить свой код, когда я заполняю фрейм данных Pandas, например, это отлично работает для автоматического увеличения строки:

 results['Cluster'] = ['Cluster %s' %i for i in range(1, len(results)   1)]
 

Результат:
Кластер 1
Кластер 2
Кластер 3
и т. Д
Как я делаю тот же элегантный код, когда я ссылаюсь на другие значения фрейма данных, все, что мне нужно сделать, это увеличить cluster_X и total_c X, а затем ссылаться на каждое из них по отдельности…

 results['Item per Population'] = [cluster_1.shape[0]/total_c1,cluster_2.shape[0]/total_c2,cluster_3.shape[0]/total_c3]
 

Спасибо.

Ответ №1:

хорошо, я понял это сам.

Сначала определите

кластеры = [кластер_1, кластер_2 … и т.д.)

totals_pop = [total_c1, total_c2 … и т.д.)

затем:

 appended_data = []
for i, x in zip(clusters,totals_pop):
 data = i.shape[0]/x
 appended_data.append(data)
appended_data
results['Car Wash per Population'] = np.array(appended_data)
 

Вместо этого может быть более элегантный способ сделать это с помощью results.loc[…] .