Python: получение наибольшего значения между повторяющимся именем и вывод соответствующих данных из файла CSV в формат словаря - PullRequest
0 голосов
/ 20 октября 2019

Предыдущее решение, которое я получил

Следующие коды, которые я улучшил.

Передано из файла CSV и получить данные. По годам в 2015,2016,2017 соответственно.

df = pd.read_csv('government-procurement-via-gebiz.csv', parse_dates=['award_date'], 
infer_datetime_format=True, usecols=['supplier_name', 'award_date', 'awarded_amt'],)

df = df[(df['supplier_name'] != 'na') & (df['award_date'].dt.year == 
2016)].reset_index(drop=True)

# df = df.drop_duplicates(subset=['supplier_name'])
df = df.sort_values('awarded_amt', ascending=False).nlargest(5,'awarded_amt')
d1 = df.set_index('supplier_name')['awarded_amt']
print d1

Ниже приводится мой вывод.

supplier_name                                   awarded_amt
GS ENGINEERING & CONSTRUCTION CORP.             1.988000e+09
SAMSUNG C&T CORPORATION                         8.336120e+08
PENTA-OCEAN CONSTRUCTION CO LTD                 6.744177e+08
SAMSUNG C&T CORPORATION                         4.509105e+08
KTC CIVIL ENGINEERING & CONSTRUCTION PTE LTD    4.175000e+08

Как я должен выводить их в формате словаря.

...