Pandas實現(xiàn)重命名列的4種方法
Pandas dataframe現(xiàn)在已經(jīng)成為主流。大家都在用它進(jìn)行數(shù)據(jù)分析、機(jī)器學(xué)習(xí)、數(shù)據(jù)工程,甚至軟件開發(fā)。學(xué)習(xí)重命名列是數(shù)據(jù)清洗的第一步,而數(shù)據(jù)清洗是數(shù)據(jù)分析的核心部分。我們在這篇文章中來教大家重命名單列或多列名稱的四種方法。
方法1:使用
rename()函數(shù)。方法2:分配新列名列表。
方法3:替換列屬性的字符串。
方法4:使用
set_axis()函數(shù)。
創(chuàng)建Pandas Dataframe
將首先創(chuàng)建一個簡單的學(xué)生班級成績字典。它由三列組成:id、name和grade,以及五行。
為了將Python字典轉(zhuǎn)換為Pandas Dataframe,將使用pandas DataFrame()函數(shù),并使用Deepnote(這是一個Jupyter Notebook云端筆記本)顯示結(jié)果。
注意:將多次使用
student_dict字典來為每個方法創(chuàng)建Dataframe。
import pandas as pd
student_dict = {
"id": [101, 102, 103, 104, 105],
"name": ["Abid", "Matt", "Karen", "Abhijeet", "Malena"],
"grade": ["A", "B", "D", "A", "C"],
}
# 將字典轉(zhuǎn)換為Dataframe
student_df_1 = pd.DataFrame(student_dict)
student_df_1
| id | name | grade | |
|---|---|---|---|
| 0 | 101 | Abid | A |
| 1 | 102 | Matt | B |
| 2 | 103 | Karen | D |
| 3 | 104 | Abhijeet | A |
| 4 | 105 | Malena | C |
方法一
第一種方法非常簡單,使用pandas的rename()函數(shù)來重新標(biāo)記列名。
重命名一個單列
在這個例子中,將使用.rename()來重命名一個單列。只需要向columns參數(shù)提供一個新、舊列名的字典。
例如:{"old_column_name" : "new_column_name" }。
可以看到,已經(jīng)成功地用ID替換了id。
student_df_1.rename(columns={"id": "ID"}, inplace=True)
student_df_1

注意:inplace = True意味著正在對Dataframe進(jìn)行修改。它類似于df = df.rename()。
重命名多個列
對于多列,只需提供用逗號(,)分隔的新舊列名字典,它就會自動替換列名。
新的列名是Student_ID,First_Name,和Average_Grade。
student_df_1.rename(
columns={"ID": "Student_ID", "name": "First_Name", "grade": "Average_Grade"},
inplace=True,
)
student_df_1

方法二
第二種方法很簡單明了。將通過將新名稱的列表分配給DataFrame對象的columns屬性來重新命名這些列。
例如,使用字典創(chuàng)建了一個新的DataFrame,并通過向列屬性提供一個字符串列表來重命名列。
student_df_2 = pd.DataFrame(student_dict) student_df_2.columns = ["Student_ID", "First_Name", "Average_Grade"] student_df_2

方法三
第三種方法是Python生態(tài)的原生方法,替換columns屬性的字符串。
例如:df = df.columns.str.replace("old_name", "new_name")。
已經(jīng)成功地將列名改為ID、Name和Grades。
student_df_3 = pd.DataFrame(student_dict)
student_df_3.columns = student_df_3.columns.str.replace("id", "ID")
student_df_3.columns = student_df_3.columns.str.replace("name", "Name")
student_df_3.columns = student_df_3.columns.str.replace("grade", "Grades")
student_df_3

方法四
在第四種方法中,將使用set_axis()函數(shù)重命名列。需要提供一個新名稱的列表,并設(shè)置axis = "columns"來重命名列,而不是索引。
student_df_4 = pd.DataFrame(student_dict) student_df_4.set_axis(["A", "B", "C"], axis="columns", inplace=True) student_df_4

到此這篇關(guān)于Pandas實現(xiàn)重命名列的4種方法的文章就介紹到這了,更多相關(guān)Pandas 重命名列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于python opencv單目相機(jī)標(biāo)定的示例代碼
這篇文章主要介紹了基于python opencv單目相機(jī)標(biāo)定的實現(xiàn)代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01
Python中decimal.Decimal類型和float類型的比較
這篇文章主要介紹了Python中decimal.Decimal類型和float類型的比較,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
使用python對多個txt文件中的數(shù)據(jù)進(jìn)行篩選的方法
今天小編就為大家分享一篇使用python對多個txt文件中的數(shù)據(jù)進(jìn)行篩選的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
python爬蟲之你好,李煥英電影票房數(shù)據(jù)分析
這篇文章主要介紹了python爬蟲之你好,李煥英電影票房數(shù)據(jù)分析,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python爬蟲的小伙伴們有一定的幫助,需要的朋友可以參考下2021-04-04

