искать строку третьего столбца в другом столбце, если найден, вставить его смежные значения с помощью панд - PullRequest
0 голосов
/ 04 октября 2019

У меня есть 3 столбца город, область и пин-код. обратите внимание, что большинство областей не присутствует в столбце областей, и они присутствуют в столбце города, поэтому для информирования о городе я хочу заполнить пин-коды, используя столбец области и пин-кода

City            Area            Pincode 
Mumbai                      
Pune            Bandra E        123456
Bandra(W)       Badalapur       789456
Bandra(E)       
Badlapur        Mumbai          159357
                Pune             411009

Я хочу использовать столбец города какСтрока поиска, так как я уже заполнил значения NaN, используя столбец области и пин-кода, но есть город, для которого я не вижу пин-кодов в столбце пин-кода, поэтому я хочу использовать столбец города в качестве строки поиска. Можем ли мы считать площадь и пин-код моей главной таблицей и с помощью этих двух столбцов заполнить недостающие пин-коды города? Спасибо

ожидаемый результат

Городской район Пин-код Мумбаи 159357 Пуна Бандра E 123456 Бандра (W) Бадалапур 789456 Бандра (E) 123456 Бадлапур Мумбаи 159357 Пуна 411009

1 Ответ

0 голосов
/ 04 октября 2019

Вот что вам нужно.

#df.replace('?',np.nan) #use this if you indeed have '?' instead on NaN in the columns & the nuse the line below
df['Pincode']=df.groupby('Area')['Pincode'].fillna(method ='ffill')

Вход

      City      Area        Pincode
0   Mumbai      Pune        411009.0
1   Pune        Bandra-E    123456.0
2   Bandra(W)   Badalapur   789456.0
3   Bandra(E)   Bandra-W    258159.0
4   Badlapur    Mumbai      159357.0
5   NaN         Pune        NaN
6   NaN         Bandra-W    NaN

Выход

      City      Area        Pincode
0   Mumbai      Pune        411009.0
1   Pune        Bandra-E    123456.0
2   Bandra(W)   Badalapur   789456.0
3   Bandra(E)   Bandra-W    258159.0
4   Badlapur    Mumbai      159357.0
5   NaN         Pune        411009.0
6   NaN         Bandra-W    258159.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...