Python機器學習(八十九)Pandas 整理列名


關於數據集的列名,通常建議最好使用小寫字母,刪除特殊字符,並用下划線替換空格。有時數據集的列名可能不是很規范,需要整理修改理列名。

獲取DataFrame的列名

獲取DataFrame的列名,可以使用DataFrame.columns屬性。

movies_df.columns

輸出

Index(['Rank', 'Genre', 'Description', 'Director', 'Actors', 'Year',
       'Runtime (Minutes)', 'Rating', 'Votes', 'Revenue (Millions)',
       'Metascore'],
      dtype='object')

使用rename方法重命名列名

要重命名列名,可以使用DataFrame.rename()方法,該方法的參數是包含新舊列名的字典。

movies_df.rename(columns={
        'Runtime (Minutes)': 'Runtime', 
        'Revenue (Millions)': 'Revenue_millions'
    }, inplace=True)

movies_df.columns

輸出

Index(['Rank', 'Genre', 'Description', 'Director', 'Actors', 'Year', 'Runtime',
       'Rating', 'Votes', 'Revenue_millions', 'Metascore'],
      dtype='object')

但是如果我們想把所有的名字都小寫呢?除了使用.rename(),我們還可以為列設置一個名稱列表,如下所示:

使用columns屬性重命名列名

除了rename方法,columns屬性也可重命名列名。

movies_df.columns = ['rank', 'genre', 'description', 'director', 'actors', 'year', 'runtime', 
                     'rating', 'votes', 'revenue_millions', 'metascore']

movies_df.columns

輸出

Index(['rank', 'genre', 'description', 'director', 'actors', 'year', 'runtime',
       'rating', 'votes', 'revenue_millions', 'metascore'],
      dtype='object')

上面指定名稱的代碼過於繁瑣,可以使用更簡潔的循環:

movies_df.columns = [col.lower() for col in movies_df]

movies_df.columns

輸出

Index(['rank', 'genre', 'description', 'director', 'actors', 'year', 'runtime',
       'rating', 'votes', 'revenue_millions', 'metascore'],
      dtype='object')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM