![](/img/trans.png)
[英]Python convert lists of unequal length into dictionaries, and then columns
[英]code multiple columns based on lists and dictionaries in Python
我在熊貓中有以下數據框
OfferPreference_A OfferPreference_B OfferPreference_C
A B A
B C C
C S G
我在所有列下都有以下唯一值的字典
dict1={A:1, B:2, C:3, S:4, G:5, D:6}
我也有專欄的清單
columnlist=['OfferPreference_A', 'OfferPreference_B', 'OfferPreference_C']
我正在嘗試獲取下表作為輸出
OfferPreference_A OfferPreference_B OfferPreference_C
1 2 1
2 3 3
3 4 5
我該怎么做呢。
采用:
#if value not match get NaN
df = df[columnlist].applymap(dict1.get)
要么:
#if value not match get original value
df = df[columnlist].replace(dict1)
要么:
#if value not match get NaN
df = df[columnlist].stack().map(dict1).unstack()
print (df)
OfferPreference_A OfferPreference_B OfferPreference_C
0 1 2 1
1 2 3 3
2 3 4 5
您可以使用map
如下所示,假設值將始終匹配
for col in columnlist:
df[col] = df[col].map(dict1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.