簡體   English   中英

如何有效地將字典的 map 值轉換為 df 列?

[英]How to effectively map values of dictionary to df column?

我有一本包含州和郵政編碼的字典

states          zipcode

Sachsen         38440
Niedersachsen   20867
.
.
.

我的 dataframe 只有郵政編碼,我試過以下

df['states'] =  df.zipcode.map({item: k for k, v in temp.items() for item in v})

但這總是不起作用,它返回 NaN。

嘗試使用df['state'] = df['zipcode'].map(dict_map)

下面是我用來執行操作的字典結構,如果你的字典結構不同,你必須制作如下的字典結構。

聽寫

dict_map = {'Sachsen': '38440', "Niedersachsen": '20867'}
#interchaging key value pair
dict_map = {value:key for key, value in dict_map.items()}

dataframe df

     zipcode
0    38440
1    20867

用於創建dictdf以在df中映射和創建新列的完整代碼。

代碼-

dict_map = {'Sachsen': 38440, "Niedersachsen": 20867} #dict
dict_map = {value:key for key, value in dict_map.items()} #interchange key,value pair
dict_map.keys()
df = {'zipcode': [38440,20867]} 
df = pd.DataFrame.from_dict(df)  #created one df
df['state'] = df['zipcode'].map(dict_map) 
df

Output

    zipcode state
0   38440   Sachsen
1   20867   Niedersachsen

參考鏈接- https://datascientyst.com/pandas-map-column-dictionary/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM