[英]How to convert from pandas dataframe to a dictionary
我查看了將 Pandas DataFrame 轉換為字典的指南,以獲取將我的 dataframe 轉換為字典的指南。 但是,我似乎無法更改代碼以將 output 轉換為字典。
以下是我的代碼。
import pandas as pd
import collections
governmentcsv = pd.read_csv('government-procurement-via-gebiz.csv',parse_dates=True) #read csv and it contain dates (parse_dates = true)
extract = governmentcsv.loc[:, ['supplier_name','award_date']] #only getting these columns
extract.award_date= pd.to_datetime(extract.award_date)
def extract_supplier_not_na_2015():
notNAFifteen = extract[(extract.supplier_name != 'na') & (extract.award_date.dt.year == 2015)] #extract only year 2015
notNAFifteen.reset_index(drop = True,inplace=True) #reset index
notNAFifteen.index += 1 #and index start from 1
#SortednotNAFifteen = collections.orderedDictionary(notNAFifteen)
return notNAFifteen
print extract_supplier_not_na_2015()
OUTPUT 是:
supplier_name award_date
1 RMA CONTRACTS PTE. LTD. 2015-01-28
2 TESCOM (SINGAPORE) SOFTWARE SYSTEMS TESTING PT... 2015-07-01
3 MKS GLOBAL PTE. LTD. 2015-04-24
4 CERTIS TECHNOLOGY (SINGAPORE) PTE. LTD. 2015-06-26
5 RHT COMPLIANCE SOLUTIONS PTE. LTD. 2015-08-14
6 CLEANMAGE PTE. LTD. 2015-07-30
7 SOLUTIONSATWORK PTE. LTD. 2015-11-23
8 Ufinity Pte Ltd 2015-05-04
9 NCS PTE. LTD. 2015-01-28
我想我找到了這個數據集: https://data.gov.sg/dataset/government-procurement
無論如何,這是代碼
import pandas as pd
df = pd.read_csv('government-procurement-via-gebiz.csv',
encoding='unicode_escape',
parse_dates=['award_date'],
infer_datetime_format=True,
usecols=['supplier_name', 'award_date'],
)
df = df[(df['supplier_name'] != 'Unknown') & (df['award_date'].dt.year == 2015)].reset_index(drop=True)
#Faster way:
d1 = df.set_index('supplier_name').to_dict()['award_date']
#Alernatively:
d2 = dict(zip(df['supplier_name'], df['award_date']))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.