【小白从小学Python、C、Java】
【Python全国计算机等级考试】
【Python数据分析考试必会题】
● 标题与摘要
Python删除数据框中的行或列
DataFrame.drop()
● 选择题
关于DataFrame.drop()方法,以下哪一项说法错误。
A.axis默认为0,指删除行。
B.axis默认为0,指删除列。
C.inplace=False,返回一个执行删除操作后的新数据框。
D.inplace=True,则会直接在原数据上进行删除操作。
欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn
● 问题解析
1.drop()函数的语法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)
2.drop()函数的参数:
(1)labels 就是要删除的行列的名字,用列表给定。
(2)axis 默认为0,指删除行,因此删除columns时要指定axis=1;
(3)index 直接指定要删除的行。
(4)columns 直接指定要删除的列。
(5)inplace=False,默认该删除操作不改变原数据框,drop()函数的返回值是删除操作后的结果;inplace=True,则会直接在原数据框上进行删除操作,删除后drop()函数无返回值。
3.删除行列有两种方式:
(1)labels=None,axis=0 的组合。
(2)index或columns直接指定要删除的行或列。(详细例子见附图)
● 附图
图1 drop()函数删除行
图2 删除列的两种方式
● 附图代码
import pandas as pd
import numpy as np
#生成一个三行四列的数据框
df = pd.DataFrame(np.arange(12).reshape(3, 4),
columns=['A', 'B', 'C', 'D'])
df
#按索引删除行
'''inplace=False,默认该删除操作不改变原数据,
而是返回一个执行删除操作后的新dataframe'''
df.drop([0,1])
#删除列的方法一
df.drop(['B', 'C'], axis=1)
#删除列的方法二
df.drop(columns=['B', 'C'])
● 正确答案
B