摘要:本文參考自修改列名原博客針對每個中的元素做相同的修改操作而拙作是對每個元素做不同操作的生搬硬套請大家不吝賜教提出問題存在一個名為的現在我要將其名字改為該如何操作解決一通過類的自身屬性修改無腦賦值直接修改先解決的推導問題列表推導類型轉換通過函
本文參考自:pandas 修改 DataFrame 列名
原博客針對每個DataFrame.columns中的元素做相同的修改操作
而拙作是對每個元素做不同操作的生搬硬套, 請大家不吝賜教
存在一個名為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")
現在, 我要將其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")該如何操作? 解決 一.通過DataFrame.columns類的自身屬性修改: 1.無腦賦值直接修改
>>> # 先解決`new_columns`的推導問題 >>> # 列表推導 >>> new_columns_list = [column_str+"_"+str(i) for i ,column_str in enumerate(dataset.columns)] >>> # 類型轉換 >>> new_columns = pd.core.indexes.base.Index(new_columns_list) >>> dataset.columns = new_columns2.通過.map(mapper, na_action=None)函數來修改
>>> # 注:mapper 多運用 lambda 表達式 >>> # 但我似乎沒有找到在 lambda 表達式中改變兩個值的方法 >>> # 所以只能蹩腳地用一個全局變量i, 和映射函數mapper() >>> # 希望大家能幫我找到方法 >>> i = 0 >>> def mapper(x): # 映射函數即 mapper global i x += "_" + str(i) i += 1 return x >>> dataset.columns.map(mapper)3.參考博客用到了DataFrame.columns.str對象
用help(DataFrame.columns.str)翻遍了文檔,
也沒能找到可以被我拿來套用的方法, 想著抽時間把這段文檔翻譯一下
>>> # 此處先用字典推導法 >>> new_dict = { key:key+"_"+str(i) for i, key in enumerate(dataset.columns) } >>> dataset.rename(columns=new_dict, inplace=True)2.映射修改法
>>> # 原博文依然用到了 lambda 表達式 >>> # 我就再生搬硬套一次, 把上面的復制過來 >>> # 蹩腳地用一個全局變量i, 和映射函數mapper() >>> i = 0 >>> def mapper(x): # 映射函數即 mapper global i x += "_" + str(i) i += 1 return x dataset.rename(columns=mapper, inplace=True)稍微總結一下 : 字典推導和列表推導的使用方法很類似, 最大的區別是選擇中括號還是大括號 寫在最后 十分歡迎大家直接修改拙作或提出建議!!!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43217.html
摘要:數據規整化清理轉換合并重塑數據聚合與分組運算數據規整化清理轉換合并重塑合并數據集可根據一個或多個鍵將不同中的行鏈接起來。函數根據樣本分位數對數據進行面元劃分。字典或,給出待分組軸上的值與分組名之間的對應關系。 本篇內容為整理《利用Python進行數據分析》,博主使用代碼為 Python3,部分內容和書本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個...
摘要:批量刪除列名中的后綴實戰使用函數批量刪除列名中的后綴使用函數批量刪除列名中的后綴目錄 ?Pandas批量刪除dataframe列名中的后綴實戰:使用rstrip函數批量刪除列名中的后綴(suffix)、使用replace函數批量刪除列名中的后綴(suffix) 目錄
摘要:批量刪除列名中的前綴實戰使用函數批量刪除列名中的前綴使用函數批量刪除列名中的前綴目錄 Pandas批量刪除dataframe列名中的前綴實戰:使用lstrip函數批量刪除列名中的前綴(prefix)、使用replace函數批量刪除列名中的前綴(prefix) ? 目錄
前言: 先感受一下數據科學的魅力,上圖是在Smart Dubai 2017 GITEX科技周展臺上推出Smart Decision-Making Platform(智能決策平臺),于10月8日至12日在迪拜世界貿易中心舉行。游客可以通過一個沉浸式的空間將數據可視化,讓他們了解迪拜的未來。讓參觀者可以在現場查閱觀看全市數據,這意味著迪拜將成為了世界上第一個與公眾分享實時實時數據的城市,同時還可以預...
閱讀 3245·2023-04-26 01:31
閱讀 1892·2023-04-25 22:08
閱讀 3430·2021-09-01 11:42
閱讀 2823·2019-08-30 12:58
閱讀 2165·2019-08-29 18:31
閱讀 2429·2019-08-29 17:18
閱讀 3064·2019-08-29 13:01
閱讀 2552·2019-08-28 18:22