Pandas中如何对DataFrame列名进行重命名

目录
  • 1.重命名Pandas DataFrame Column(列)
  • 2.在创建Dataframe时指定列名
  • 3.※使用 list 设置全部列名※
  • 总结

Pandas是一个用于数据分析和操作的Python库。在pandas中几乎所有的操作都围绕着DataFrame。Dataframe是一个二维表的抽象表示,可以包含各种数据。

1.重命名Pandas DataFrame Column(列)

背景:只想重命名几列,最好在创建DataFrame后使用rename方法

使用Dataframe时,列经常被称为属性或字段。

有两个选项用于操作DataFrame的列名:

  1. 重命名现有的DataFrame的列
  2. 在创建新的DataFrame时指定自定义列名

(1)重命名现有DataFrame的列——rename( )函数

使用rename()方法,它需要:

  1. 一个字典作为columns参数,包含 {原列名:新列名} 的键值对的映射。
  2. 一个boolean值作为inplace参数,如果设置为True将对原始Dataframe进行修改。

举例:

df.rename(columns = {'Name' : 'First Name', 'age' : 'Age'}, inplace = True)

PS:Pandas读取csv或excel数据时,很可能遇到的columns中,列名会带有特殊字符,例如:空格、 、 、双空格、引号等等,如果不想手动修改的话,可以df.rename()来解决。

df = pd.read_excel(data_path)
df_ = df.rename(columns=lambda x: x.replace(" ","").replace('  ','').replace("      ","").replace(r"    ","").replace(r"
",""))

2.在创建Dataframe时指定列名

从一个csv文件中创建一个Dataframe并想忽略标题列名而指定自己的列名

(1)通过向names参数传递一个列表,我们可以用我们自己的列表覆盖已经存在的标题列。列表中的每一列都必须有一个名字,否则就会出现异常。

columns = ['First Name', 'Age']
df = pd.read_csv('out.csv', header = None, names = columns)

(2)另一种方法是在普通的DataFrame()构造函数中指定列名。唯一不同的是,现在接收列名列表的参数被称为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 设置全部列名※

df.columns = list("abcd")

总结

到此这篇关于Pandas中如何对DataFrame列名进行重命名的文章就介绍到这了,更多相关Pandas对DataFrame列重命名内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • pandas修改DataFrame列名的方法

    在做数据挖掘的时候,想改一个DataFrame的column名称,所以就查了一下,总结如下: 数据如下: >>>import pandas as pd >>>a = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6], 'C':[7,8,9]}) >>> a A B C 0 1 4 7 1 2 5 8 2 3 6 9 方法一:暴力方法 >>>a.columns = ['a','b','c'] >>

  • pandas 给dataframe添加列名的两种方法

    目录 方法1 方法2 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表.DataFrame的单元格可以存放数值.字符串等,同时DataFrame可以设置列名columns与行名index. 方法1 import pandas as pd import numpy as np df1 = pd.DataFrame(np.random.randn(3, 3), index=list('abc'), columns=list('ABC')) print(

  • Pandas.DataFrame的行名和列名的修改

    目录 DataFrame.rename() 多个行名和列名的修改 原DataFrame的修改(参数inplace) 使用lambda表达式和函数进行批处理 add_prefix(), add_suffix() index和columns元素的更新 pandas.DataFrame行名(index)和列名(columns)的修改方法如下. rename() 任意的行名(index)和列名(columns)的修改 add_prefix(), add_suffix() 列名的接头词和结尾词的追加 in

  • pandas 空的dataframe 插入列名的示例

    如下所示: colum = ['性别','年龄','M','样本类型'] + muta_list + ['B'] data1 = pd.DataFrame(columns=colum) 以上这篇pandas 空的dataframe 插入列名的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • pandas修改DataFrame列名的实现方法

    提出问题 存在一个名为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.id

  • Pandas修改DataFrame列名的两种方法实例

    目录 解决方法1:通过DataFrame.columns类的自身属性修改 1.暴力修改 2.stirp方法 3.lambda表达式 解决方法2:通过DataFrame.rename()函数修改 1.暴力修改(可以只修改部分列名) 2.lambda表达式 pandas更改DataFrame的行名或列名实例 更改列名 更改行名 总结 输入: $a $b $c $d $e 0 1 2 3 4 5 期望的输出: a  b  c  d  e0  1  2  3  4  5 原数据DataFrame: im

  • Pandas中如何对DataFrame列名进行重命名

    目录 1.重命名Pandas DataFrame Column(列) 2.在创建Dataframe时指定列名 3.※使用 list 设置全部列名※ 总结 Pandas是一个用于数据分析和操作的Python库.在pandas中几乎所有的操作都围绕着DataFrame.Dataframe是一个二维表的抽象表示,可以包含各种数据. 1.重命名Pandas DataFrame Column(列) 背景:只想重命名几列,最好在创建DataFrame后使用rename方法 使用Dataframe时,列经常被

  • pandas中字典和dataFrame的相互转换

    目录 一.字典转dataFrame 1.字典转dataFrame比较简单,直接给出示例: 二.dataFrame转字典 1.DataFrame.to_dict() 函数介绍 2.orient =‘dict’ 3. orient =‘list’ 4.orient =‘series’ 5.orient =‘split’ 6.orient =‘records’ 7.orient =‘index’ 8.指定列为key生成字典的实现步骤(按行) 9.指定列为key,value生成字典的实现 总结 一.字典

  • 在pandas中一次性删除dataframe的多个列方法

    之前沉迷于使用index删除,然而发现pandas貌似有bug? import pandas as pd import numpy as np df = pd.DataFrame(np.arange(12).reshape(3,4), columns=['A', 'B', 'C', 'D']) x=[1,2] df.drop(index=[1,2], axis=1, inplace=True) #axis=1,试图指定列,然并卵 print df 输出为 A B C D 0 0 1 2 3 还是

  • Pandas中两个dataframe的交集和差集的示例代码

    创建测试数据: import pandas as pd import numpy as np #Create a DataFrame df1 = { 'Subject':['semester1','semester2','semester3','semester4','semester1', 'semester2','semester3'], 'Score':[62,47,55,74,31,77,85]} df2 = { 'Subject':['semester1','semester2','s

  • Pandas中Series和DataFrame的索引实现

    正文 在对Series对象和DataFrame对象进行索引的时候要明确这么一个概念:是使用下标进行索引,还是使用关键字进行索引.比如list进行索引的时候使用的是下标,而dict索引的时候使用的是关键字. 使用下标索引的时候下标总是从0开始的,而且索引值总是数字.而使用关键字进行索引,关键字是key里面的值,既可以是数字,也可以是字符串等. Series对象介绍: Series对象是由索引index和值values组成的,一个index对应一个value.其中index是pandas中的Inde

  • 修改Pandas的行或列的名字(重命名)

    pandas.DataFrame.rename 使用函数: DataFrame.rename(mapper=None, index=None, columns=None, axis=None, copy=True, inplace=False, level=None) 功能:更改轴标签 函数字典值必须是唯一的(1对1).未包含在 字典/Series  中的标签将保留原样.列出的额外标签不会引发错误. 参数: mapper, index, columns : dict-like or functi

  • pandas中的DataFrame按指定顺序输出所有列的方法

    问题: 输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致. 例如: import pandas as pd grades = [48,99,75,80,42,80,72,68,36,78] df = pd.DataFrame( {'ID': ["x%d" % r for r in range(10)], 'Gender' : ['F', 'M', 'F', 'M', 'F', 'M', 'F', 'M', 'M', 'M'],

  • Pandas中的unique()和nunique()区别详解

    Pandas中Series和DataFrame的两种数据类型中都有nunique()和unique()方法.这两个方法作用很简单,都是求Series或Pandas中的不同值.而unique()方法返回的是去重之后的不同值,而nunique()方法则直接放回不同值的个数. 具体如下: 如果Series或DataFrame中没有None值,则unique()方法返回的序列数据的长度等于nunique()方法的返回值(如上述代码中所展示的).则当Series或DataFrame中有None值时,这两个

  • 在Linux中如何一次重命名多个文件详解

    前言 在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等. 你可能已经知道,我们使用 mv 命令在类 Unix 操作系统中重命名或者移动文件和目录. 但是,mv 命令不支持一次重命名多个文件. 不用担心. 在本教程中,我们将学习使用 Linux 中的 mmv 命令一次重命名多个文件. 此命令用于在类 Unix 操作系统中使用标准通配符批量移动.复制.追加和重命名文件. 在 Linux 中一次重命名多个文件 mmv 程序可在基于 De

  • python 实现对文件夹中的图像连续重命名方法

    python实现的对文件夹中的图像进行连续的重命名方法: import os class BatchRename(): def __init__(self): self.path = 'C:/Users/zxl/Desktop/tr' def rename(self): filelist = os.listdir(self.path) total_num = len(filelist) i = 101 for item in filelist: if item.endswith('.jpg'):

随机推荐