在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  还是按照行进行了删除

后来请教大神得知,可以用:

df.drop(df.columns[x], axis=1, inplace=True) 的方法。

即:

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(df.columns[x], axis=1, inplace=True)
print df

的方法删除。输出结果符合预期。

以上这篇在pandas中一次性删除dataframe的多个列方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

您可能感兴趣的文章:

  • Python中datetime常用时间处理方法
  • pandas中的DataFrame按指定顺序输出所有列的方法
  • python DataFrame 修改列的顺序实例
  • python读取文本中数据并转化为DataFrame的实例
  • python 处理dataframe中的时间字段方法
(0)

相关推荐

  • python DataFrame 修改列的顺序实例

    假设我有一个DataFrame(df)如下: name age id mike 10 1 tony 14 2 lee 20 3 现在我想把id 放到最前面,变成: id name age df_id = df.id df = df.drop('id',axis=1) df.insert(0,'id',df_id) 以上这篇python DataFrame 修改列的顺序实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: Python中datet

  • 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'],

  • python 处理dataframe中的时间字段方法

    在机器学习过程中,通常会通过pandas读取csv文件,保持成dadaframe格式,然而有时候需要对dataframe中的时间字段进行数据建模,比如时间格式为datetime,那么像一般操作dataframe的方式来操作时间字段会报错的,所以在使用sklearn库进行fit和predict的时候,通常要把时间字段首先转换为timestamp格式,在fit和predict之后,如果需要matplotlib绘图的时候,再把timestamp格式转换为时间字符串,比如2017-02-01 14:25

  • Python中datetime常用时间处理方法

    常用时间转换及处理函数: import datetime # 获取当前时间 d1 = datetime.datetime.now() print d1 # 当前时间加上半小时 d2 = d1 + datetime.timedelta(hours=0.5) print d2 # 格式化字符串输出 d3 = d2.strftime('%Y-%m-%d %H:%M:%S') print d3 # 将字符串转化为时间类型 d4 = datetime.datetime.strptime(date,'%Y-

  • python读取文本中数据并转化为DataFrame的实例

    在技术问答中看到一个这样的问题,感觉相对比较常见,就单开一篇文章写下来. 从纯文本格式文件 "file_in"中读取数据,格式如下: 需要输出成"file_out",格式如下: 数据的原格式是"类别:内容",以空行"\n"为分条目,转换后变成一个条目一行,按照类别顺序依次写出内容. 建议读取后,使用pandas,把数据建立称DataFrame的表格.这样方便以后处理数据.但是原格式并不是通常的表格格式,所以要先做一些简单的处理

  • 在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中字典和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列名进行重命名

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

  • 详细介绍在pandas中创建category类型数据的几种方法

    在pandas中创建category类型数据的几种方法之详细攻略 T1.直接创建 category类型数据 可知,在category类型数据中,每一个元素的值要么是预设好的类型中的某一个,要么是空值(np.nan). T2.利用分箱机制(结合max.mean.min实现二分类)动态添加 category类型数据 输出结果 [NaN, 'medium', 'medium', 'fat'] Categories (2, object): ['medium', 'fat']    name    ID

  • Pandas中MultiIndex选择并提取任何行和列

    目录 选择并提取带有loc的任何行或列 特殊切片规范:slice(),pd.IndexSlice [] xs方法 给选择赋值 使用多索引(分层索引)可以方便地对pandas.DataFrame和pandas.Series的索引进行分层配置,以便可以为每个层次结构计算统计信息,例如总数和平均值. 以下csv数据为例.每个索引列都命名为level_x. import pandas as pd df = pd.read_csv('./data/25/sample_multi.csv', index_c

  • python pandas 对series和dataframe的重置索引reindex方法

    reindex更多的不是修改pandas对象的索引,而只是修改索引的顺序,如果修改的索引不存在就会使用默认的None代替此行.且不会修改原数组,要修改需要使用赋值语句. series.reindex() import pandas as pd import numpy as np obj = pd.Series(range(4), index=['d', 'b', 'a', 'c']) print obj d 0 b 1 a 2 c 3 dtype: int64 print obj.reinde

  • Pandas中Series和DataFrame的索引实现

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

  • Docker中如何删除image(镜像)的方法

    docker中删除images的命令是docker rmi,但有时候执行此命令并不能删除images [yaxin@ubox ~] $docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE eg_sshd latest ed9c93747fe1 45 hours ago 329.8 MB CentOS65 latest e55a74a32125 2 days ago 360.6 MB [yaxin@ubox ~]$docker rmi

随机推荐