Я хочу создать преступление новый столбец в моем фрейме данных, который является уровнем преступности в каждой конкретной строке

#python #pandas #numpy #data-science

#python #панды #numpy #наука о данных

Вопрос:

У меня есть набор данных о преступлениях, я уже подсчитал преступления, совершенные в каждом месте. Теперь я хочу создать новый столбец, который является уровнем преступности для этой конкретной строки. Я уже рассчитал уровень преступности, теперь я хочу сопоставить конкретный уровень преступности, чтобы исправить строку, соответствующую тому же значению широты

Здесь у меня есть цикл, который создает уровень преступности для каждого местоположения. но теперь я хочу получить значение уровня преступности создать новый столбец, который соответствует широте в моем цикле for с моим фреймом данных и добавляет к соответствующему уровню преступности в каждой отдельной строке

 z = ['lat'] 
for i in z:
    print((df[i].value_counts()/1250000)*100000)
32.715973    112.56
32.715738     90.32
32.706341     83.28
32.545300     79.52
32.745903     78.32
32.769389     65.52
32.809860     63.44
32.706287     63.04
32.591684     55.68
32.764136     55.44
32.749983     52.16
32.545291     49.04
32.712584     47.20
32.746868     46.32
32.796864     44.40
32.706287     43.76
32.768120     42.64
32.794497     41.52
32.703369     40.80
32.714797     40.40
32.716977     39.44
32.738989     39.04
32.755182     37.28
32.957955     35.52
32.759375     35.28
32.565237     34.72
32.739964     34.08
32.767116     34.00
32.877050     32.24
32.706559     32.24

 

Ответ №1:

Я думаю, вы можете использовать transform

 df['Newcol']=(df.groupby('lat')['lat'].transform('count')/1250000)*100000
 

Для цикла

 z = ['lat'] 
for i in z:
    df[i 'col']=(df.groupby(i)[i].transform('count')/1250000)*100000
 

Комментарии:

1. @DavidArriaga вам просто нужно назначить его обратно

2. нужен ли мне цикл for ?

3. @DavidArriaga у вас есть только одна строка, которую нужно настроить, зачем вам нужен цикл for

4. @DavidArriaga и я добавили цикл for

5. хорошо, отлично, это действительно сработало без цикла for большое вам спасибо