簡體   English   中英

如何使用apply函數重命名pandas數據框中的列?

[英]How to rename a column in pandas dataframe using apply function?

我想重命名pandas dataframe中的一列。 我想通過使用apply函數來做到這一點。 我寫了一個代碼,但我不知道如何使用apply fucntion來做到這一點。 有人可以幫忙嗎?

import pandas as pd
import numpy as np
import datetime

url = 'https://raw.githubusercontent.com/lukes/ISO-3166-Countries-with-Regional-Codes/master/all/all.csv'
df_github = pd.read_csv(url)

df_github  = df_github.rename(columns={'name':'Country'})

這是可能的,但過於復雜,因為需要將索引轉換為系列,然后使用apply調用lambda函數:

d = {'name':'Country'}
df_github.columns  = df_github.columns.to_series().apply(lambda x: d.get(x, x))

我同意jezrael,這只是讓它變得不必要地復雜化。 如果你真的想使用apply (顯然非常類似於jezrael的解決方案),那就是我將它作為一個“快速而骯臟”的解決方案來實現的:

df_github.columns = df_github.columns.to_series().apply(lambda x: 'Country' if x == 'name' else x )

暫無
暫無

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

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