Pandas中如何對DataFrame列名進行重命名
Pandas是一個用于數(shù)據(jù)分析和操作的Python庫。在pandas中幾乎所有的操作都圍繞著DataFrame。Dataframe是一個二維表的抽象表示,可以包含各種數(shù)據(jù)。
1.重命名Pandas DataFrame Column(列)
背景:只想重命名幾列,最好在創(chuàng)建DataFrame后使用rename方法
使用Dataframe時,列經(jīng)常被稱為屬性或字段。
有兩個選項用于操作DataFrame的列名:
- 重命名現(xiàn)有的DataFrame的列
- 在創(chuàng)建新的DataFrame時指定自定義列名
(1)重命名現(xiàn)有DataFrame的列——rename( )函數(shù)
使用rename()方法,它需要:
- 一個字典作為columns參數(shù),包含 {原列名:新列名} 的鍵值對的映射。
- 一個boolean值作為inplace參數(shù),如果設(shè)置為True將對原始Dataframe進行修改。
舉例:
df.rename(columns = {'Name' : 'First Name', 'age' : 'Age'}, inplace = True)
PS:Pandas讀取csv或excel數(shù)據(jù)時,很可能遇到的columns中,列名會帶有特殊字符,例如:空格、 、 、雙空格、引號等等,如果不想手動修改的話,可以df.rename()來解決。
df = pd.read_excel(data_path) df_ = df.rename(columns=lambda x: x.replace(" ","").replace(' ','').replace(" ","").replace(r" ","").replace(r" ",""))
2.在創(chuàng)建Dataframe時指定列名
從一個csv文件中創(chuàng)建一個Dataframe并想忽略標(biāo)題列名而指定自己的列名
(1)通過向names參數(shù)傳遞一個列表,我們可以用我們自己的列表覆蓋已經(jīng)存在的標(biāo)題列。列表中的每一列都必須有一個名字,否則就會出現(xiàn)異常。
columns = ['First Name', 'Age'] df = pd.read_csv('out.csv', header = None, names = columns)
(2)另一種方法是在普通的DataFrame()構(gòu)造函數(shù)中指定列名。唯一不同的是,現(xiàn)在接收列名列表的參數(shù)被稱為column而不是 names:
import numpy as np new_columns = ['First Name', 'Age'] data = np.array([["Nicholas", 23],["Scott", 32],["David", 25]]) df = pd.DataFrame(data, columns = new_columns)
3.※使用 list 設(shè)置全部列名※
df.columns = list("abcd")
總結(jié)
到此這篇關(guān)于Pandas中如何對DataFrame列名進行重命名的文章就介紹到這了,更多相關(guān)Pandas對DataFrame列重命名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python讀取Pickle文件信息并計算與當(dāng)前時間間隔的方法分析
這篇文章主要介紹了Python讀取Pickle文件信息并計算與當(dāng)前時間間隔的方法,涉及Python基于pickle模塊操作文件屬性相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-01-01