pandas列值根據字典批量替換
背景
DataFrame資料中一列的值需要根據某個字典批量對映為字典中的value。
方法1:pandas中的df.replace
import pandas as pd
import numpy as np
df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}})
print("init df:")
print(df)
column_dict = {1: "A", 2: "B"}
new_df = df.replace({"col1": column_dict})
print("use dict to replace one column,dict=", column_dict)
print("new df:")
print(new_df)
執行結果:
init df:
col2 col1
0 a w
1 2 1
2 NaN 2
use dict to replace one column,dict= {1: 'A', 2: 'B'}
new df:
col2 col1
0 a w
1 2 A
2 NaN B
方法2:map操作
import pandas as pd
import numpy as np
df = pd.DataFrame({'col2': {0: 'a', 1: 2, 2: np.nan}, 'col1': {0: 'w', 1: 1, 2: 2}})
print("init df:")
print(df)
column_dict = {1: "A", 2: "B"}
# new_df = df.replace({"col1": column_dict})
df['col1'] = df['col1'].map(column_dict)
print("use dict to replace one column,dict=", column_dict)
print("new df:")
print(df)
執行結果:
init df:
col2 col1
0 a w
1 2 1
2 NaN 2
use dict to replace one column,dict= {1: 'A', 2: 'B'}
new df:
col2 col1
0 a NaN
1 2 A
2 NaN B
PS:
資料量大的情況下,map會比 replace 要快。
相關文章
- python根據字典內的值實現排序Python排序
- 根據陣列的值刪除元素陣列
- 二維陣列根據鍵的值進行排序陣列排序
- Pandas根據篩選條件對指定excel列進行篩選!神器!Excel
- 「Excel技巧」Excel中根據某列的值去彙總另外一列的值Excel
- linux中批量替換文字中字串Linux字串
- MSSQL遍歷資料庫根據列值查詢資料SQL資料庫
- 根據字典,轉成相應的進位制
- 根據查詢條件批量修改表資料
- 如何根據角色批量啟用SAP Fiori服務
- PHP 如何根據鍵值刪除一個陣列中的元素PHP陣列
- [Python] Pandas 對資料進行查詢、替換、篩選、排序、重複值和缺失值處理Python排序
- grep、sed批量替換檔案內容shell
- 替換NULL值幫助文件Null
- JavaScript 根據物件鍵值進行排序JavaScript物件排序
- 根據屬性字串獲取屬性值字串
- php 陣列根據元素從小到大排序PHP陣列排序
- 記一次陣列操作:陣列 A 根據陣列 B 排序陣列排序
- Python如何根據給定模型計算權值Python模型
- Python 如何根據給定模型計算權值Python模型
- map自定義排序,根據鍵或者值排隊排序
- .NET正則替換URL引數值
- 根據小姐姐的抖音號批量下載抖音視訊
- 用python批量替換MD檔案中的圖片地址Python
- R語言中根據列名刪除指定的列R語言
- 二維陣列根據欄位進行排序陣列排序
- 二維陣列根據某個欄位排序陣列排序
- WPF TextBlock根據值顯示不同的內容或格式BloC
- Excel 多個變數替換 實際值Excel變數
- 02-Tcl輸出、賦值與替換賦值
- 用javascript替換URL中的引數值JavaScript
- mysql根據查詢結果批量更新多條資料(插入或更新)MySql
- Linux中 awk命令根據列的索引批次提取列的資料Linux索引
- mac下如何使用Sed批量替換資料夾下的字串Mac字串
- Elasticsearch 根據陣列長度過濾資料(qbit)Elasticsearch陣列
- 使用列舉ENUM替換Switch或If-Else
- 根據提示操作
- 根據登錄檔鍵值判斷本機EXCEL版本Excel