簡體   English   中英

使用正則表達式和字典重命名 dataframe 列

[英]Renaming dataframe columns with regex and dictionary

我有一個像這樣的 dataframe:

code_0101    code_0102    code_0103    code_0104    ...
0            1            2            3            ...
...          ...          ...          ...

我也有一本字典:

{'0101': 'cirurgical_procedures', '0102': 'medical_care', '0103': 'remedy', ...}

我想將正則表達式應用於 dataframe 列並替換我的字典中的代碼,並得到如下內容:

code_cirurgical_procedures    code_medical_care       ...
0                             1                       ...
...                           ...

關於字典,我該如何做這兩個步驟,特別是第二個步驟?

使用series.replace替換並分配回列

d = {'0101': 'cirurgical_procedures', '0102': 'medical_care', '0103': 'remedy'}
df.columns = df.columns.to_series().replace(d, regex=True)

Out[12]:
   code_cirurgical_procedures  code_medical_care  code_remedy  code_0104
0                           0                  1            2          3

假設code為前綴,您可以使用字典理解,

 cols = {'0101': 'cirurgical_procedures', '0102': 'medical_care', '0103': 'remedy'}

df.rename(columns = {f"code_{k}": f"code_{v}" for k,v in cols.items()})

暫無
暫無

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

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