欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas修改DataFrame列名的實(shí)現(xiàn)方法

 更新時(shí)間:2019年02月22日 11:26:30   作者:耗子  
這篇文章主要介紹了pandas修改DataFrame列名的實(shí)現(xiàn)方法, 文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

提出問(wèn)題

存在一個(gè)名為dataset的DataFrame

>>> dataset.columns
Index(['age', 'job', 'marital', 'education', 'default', 'housing', 'loan',
    'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays',
    'previous', 'poutcome', 'emp.var.rate', 'cons.price.idx',
    'cons.conf.idx', 'euribor3m', 'nr.employed', 'y'],
   dtype='object')

現(xiàn)在, 我要將其columns名字改為:

>>> new_columns
Index(['age_0', 'job_1', 'marital_2', 'education_3', 'default_4', 'housing_5',
    'loan_6', 'contact_7', 'month_8', 'day_of_week_9', 'duration_10',
    'campaign_11', 'pdays_12', 'previous_13', 'poutcome_14',
    'emp.var.rate_15', 'cons.price.idx_16', 'cons.conf.idx_17',
    'euribor3m_18', 'nr.employed_19', 'y_20'],
   dtype='object')

該如何操作?

解決

一.通過(guò)DataFrame.columns類的自身屬性修改:

1.無(wú)腦賦值直接修改

>>> # 先解決`new_columns`的推導(dǎo)問(wèn)題
>>> # 列表推導(dǎo)
>>> new_columns_list = [column_str+'_'+str(i) for i ,column_str in enumerate(dataset.columns)]
>>> # 類型轉(zhuǎn)換
>>> new_columns = pd.core.indexes.base.Index(new_columns_list)
>>> dataset.columns = new_columns

2.通過(guò).map(mapper, na_action=None)函數(shù)來(lái)修改

>>> # 注:mapper 多運(yùn)用 lambda 表達(dá)式
>>> # 但我似乎沒(méi)有找到在 lambda 表達(dá)式中改變兩個(gè)值的方法
>>> # 所以只能蹩腳地用一個(gè)全局變量i, 和映射函數(shù)mapper()
>>> # 希望大家能幫我找到方法

>>> i = 0
>>> def mapper(x): # 映射函數(shù)即 mapper
  global i
  x += '_' + str(i)
  i += 1
  return x
>>> dataset.columns.map(mapper)

3.參考博客用到了DataFrame.columns.str對(duì)象

用help(DataFrame.columns.str)翻遍了文檔,

也沒(méi)能找到可以被我拿來(lái)套用的方法, 想著抽時(shí)間把這段文檔翻譯一下

二.通過(guò)DataFrame.rename()函數(shù)來(lái)修改

1.暴力字典法(好處:可以只修改特定的列)

>>> # 此處先用字典推導(dǎo)法
>>> new_dict = {
  key:key+'_'+str(i)
  for i, key in enumerate(dataset.columns)
  }
>>> dataset.rename(columns=new_dict, inplace=True)

2.映射修改法

>>> # 原博文依然用到了 lambda 表達(dá)式
>>> # 我就再生搬硬套一次, 把上面的復(fù)制過(guò)來(lái)
>>> # 蹩腳地用一個(gè)全局變量i, 和映射函數(shù)mapper()

>>> i = 0
>>> def mapper(x): # 映射函數(shù)即 mapper
  global i
  x += '_' + str(i)
  i += 1
  return x
dataset.rename(columns=mapper, inplace=True)

稍微總結(jié)一下 : 字典推導(dǎo)和列表推導(dǎo)的使用方法很類似, 最大的區(qū)別是選擇中括號(hào)還是大括號(hào)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python控制臺(tái)中實(shí)現(xiàn)進(jìn)度條功能

    python控制臺(tái)中實(shí)現(xiàn)進(jìn)度條功能

    這篇文章主要介紹了python控制臺(tái)中實(shí)現(xiàn)進(jìn)度條功能的方法,想要了解的朋友可以參考一下
    2015-11-11
  • python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例

    python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例

    這篇文章主要介紹了python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • Python 網(wǎng)頁(yè)解析HTMLParse的實(shí)例詳解

    Python 網(wǎng)頁(yè)解析HTMLParse的實(shí)例詳解

    這篇文章主要介紹了Python 網(wǎng)頁(yè)解析HTMLParse的實(shí)例詳解的相關(guān)資料,python里提供了一個(gè)簡(jiǎn)單的解析模塊HTMLParser類,使用起來(lái)也是比較簡(jiǎn)單的,解析語(yǔ)法沒(méi)有用到XPath類似的簡(jiǎn)潔模式,需要的朋友可以參考下
    2017-08-08
  • Python連接數(shù)據(jù)庫(kù)并批量插入包含日期記錄的操作

    Python連接數(shù)據(jù)庫(kù)并批量插入包含日期記錄的操作

    這篇文章主要介紹了Python連接數(shù)據(jù)庫(kù)并批量插入包含日期記錄的操作,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-06-06
  • Python 概率生成問(wèn)題案例詳解

    Python 概率生成問(wèn)題案例詳解

    這篇文章主要介紹了Python 概率生成問(wèn)題案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫(kù)模塊

    Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫(kù)模塊

    這篇文章介紹了Python中的pandas表格模塊、文件模塊和數(shù)據(jù)庫(kù)模塊,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • Python reversed函數(shù)及使用方法解析

    Python reversed函數(shù)及使用方法解析

    這篇文章主要介紹了Python reversed函數(shù)及使用方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python?數(shù)據(jù)篩選功能實(shí)現(xiàn)

    Python?數(shù)據(jù)篩選功能實(shí)現(xiàn)

    這篇文章主要介紹了Python?數(shù)據(jù)篩選,無(wú)論是在數(shù)據(jù)分析還是數(shù)據(jù)挖掘的時(shí)候,數(shù)據(jù)篩選總會(huì)涉及到,這里我總結(jié)了一下python中列表,字典,數(shù)據(jù)框中一些常用的數(shù)據(jù)篩選的方法,需要的朋友可以參考下
    2023-04-04
  • python 代碼運(yùn)行時(shí)間獲取方式詳解

    python 代碼運(yùn)行時(shí)間獲取方式詳解

    這篇文章主要介紹了python 代碼運(yùn)行時(shí)間獲取方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Pygame實(shí)戰(zhàn)練習(xí)之推箱子游戲

    Pygame實(shí)戰(zhàn)練習(xí)之推箱子游戲

    推箱子想必是很多人童年時(shí)期的經(jīng)典游戲,我們依舊能記得抱個(gè)老人機(jī)娛樂(lè)的場(chǎng)景,下面這篇文章主要給大家介紹了關(guān)于如何利用python寫一個(gè)簡(jiǎn)單的推箱子小游戲的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評(píng)論