pandas删除行删除列增加行增加列的实现

yizhihongxing

Pandas是一个基于NumPy的Python库,常用于数据分析和处理。在数据分析和处理过程中,有时需要删除指定的行、列或者增加新的行、列,本文将介绍如何使用Pandas实现这些操作。

删除行和列

Pandas中删除行和列的方式比较灵活,常用的方法有drop()pop()

  • drop方法
# 删除行
df.drop(index=[1, 3], inplace=True)

# 删除列
df.drop(columns=['col1', 'col2'], inplace=True)
  • pop方法
# 删除列
col1 = df.pop('col1')

需要注意的是,drop()方法要使用inplace=True参数才会直接修改原DataFrame。如果不使用这个参数,会返回经过删除操作后的新的DataFrame,原DataFrame不会改变。

增加行和列

Pandas中增加行和列的方式也比较灵活,常用的方法有append()loc[]iloc[]

  • append方法
# 增加行
df = df.append({'col1':1, 'col2':2}, ignore_index=True)

# 增加多行
df = df.append([{'col1':1, 'col2':2}, {'col1':3, 'col2':4}], ignore_index=True)

# 增加列
df['col3'] = [3, 4, 5, 6]
  • loc方法
# 增加行
df.loc[len(df)] = [1, 2]

# 增加一列
df.loc[:,'col3'] = [3, 4, 5, 6]
  • iloc方法
# 增加行
df.loc[len(df)] = [1, 2]

# 增加一列
df.iloc[:, 3] = [3, 4, 5, 6]

其中,append()方法能够同时添加多行,但是只能添加一行,所以当需要一次添加多行的时候,可以考虑使用append()方法。而loc[]iloc[]方法更加灵活,能够定位到具体的位置进行插入操作,具有更高的自由度。

示例:

import pandas as pd

# 构造数据
data = {'col1':[1, 2, 3],
        'col2':[4, 5, 6]}
df = pd.DataFrame(data)
print('-----原始数据-----')
print(df)

# 删除行
df.drop(index=[1, 2], inplace=True)
print('-----删除行-----')
print(df)

# 删除列
df.drop(columns=['col2'], inplace=True)
print('-----删除列-----')
print(df)

# 增加行
df = df.append({'col1':1, 'col2':2}, ignore_index=True)
print('-----增加行-----')
print(df)

# 增加列
df['col3'] = [3, 4]
print('-----增加列-----')
print(df)

输出结果为:

-----原始数据-----
   col1  col2
0     1     4
1     2     5
2     3     6
-----删除行-----
   col1  col2
0     1     4
-----删除列-----
   col1
0     1
-----增加行-----
   col1  col2
0     1     4
1     1     2
-----增加列-----
   col1  col2  col3
0     1     4     3
1     1     2     4

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pandas删除行删除列增加行增加列的实现 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • python+numpy按行求一个二维数组的最大值方法

    在Python中,使用NumPy库可以方便地对数组进行各种操作,包括按行或列求最大值。下面是按行求一个二维数组的最大值方法的详细攻略。 方法一:使用max函数 在NumPy中,可以使用max函数来求一个二维数组的最大值。默认情况下,max函数会返回整个数组的最大值。但是,我们可以通过指定axis参数来按行或列求最大值。下面是一个使用max函数按行求一个二维数…

    python 2023年5月14日
    00
  • NumPy多维数组ndarray对象详解

    NumPy中最重要的对象是ndarray(N-dimensional array,多维数组)。ndarray是一个由同类型元素构成的多维数组,可以看作是Python内置的list对象的扩展,其优点在于: ndarray支持并行化运算,对于科学计算的大规模数据处理有很大的优势; ndarray支持矢量化运算,避免了Python循环语句慢的缺点; ndarray…

    2023年2月26日
    10
  • 用Python实现简单的人脸识别功能步骤详解

    用Python实现简单的人脸识别功能步骤详解 本攻略将介绍如何使用Python实现简单的人脸识别功能,并提供一些常见问题的解决方案。 1. 安装OpenCV 首先,我们需要安装OpenCV。可以使用以下命令: pip install opencv-python 2. 收集人脸数据 接下来,我们需要收集人脸数据。可以使用以下步骤: 打开摄像头 按下“s”键开始…

    python 2023年5月14日
    00
  • Python定时爬取微博热搜示例介绍

    这里是关于“Python定时爬取微博热搜示例介绍”的完整攻略。 什么是定时爬虫? 在爬虫这个领域,定时爬虫是指利用爬虫脚本按照预先设定的时间间隔,自动地从爬取目标网站上获取所需数据。 因此,后续可以通过所得数据进行一系列的分析与处理,进而推动业务的深入发展。 Python 定时爬取微博热搜 下面将会讲述两条 Python 定时爬取微博热搜 示例,帮助大家更好…

    python 2023年5月13日
    00
  • pandas系列之DataFrame 行列数据筛选实例

    pandas系列之DataFrame行列数据筛选实例 Dataframe是pandas中极为重要的数据结构之一,其由行和列构成,类似于电子表格或SQL表。本文将对DataFrame中的行列数据筛选操作进行详细讲解,包括loc、iloc、ix、以及Boolean indexing等方法。 loc方法 loc是pandas中的一种基于标签的索引方法,用于获取指定…

    python 2023年5月13日
    00
  • 对python中array.sum(axis=?)的用法介绍

    以下是关于“对Python中array.sum(axis=?)的用法介绍”的完整攻略。 背景 在Python中,使用numpy库中的array对象可以进行多维数组的操作。其中,array.sum()函数可以对数组进行求和操作。而参数则可以指定对哪个维度进行求和操作。本攻略将介绍array.sum(axis=?)的用法。 步骤 步一:创建数组 在介绍array…

    python 2023年5月14日
    00
  • 详解NumPy常用的数组的扩展和压缩方法

    NumPy数组的扩展和压缩是指在不改变数组元素的情况下,改变数组的形状或尺寸。 数组的扩展 数组的扩展是指将一个数组扩展成一个更大或更小的形状。NumPy提供了几种方式来扩展数组,包括: numpy.reshape() numpy.resize() numpy.append() numpy.reshape() reshape()函数用于改变数组的形状,返回一…

    2023年3月1日
    00
  • pytorch 实现tensor与numpy数组转换

    PyTorch是一个基于Python的科学计算库,它提供了高度优化的张量操作,包括自动求导机制。在PyTorch中,我们可以将张量与NumPy数组相互转换。以下是PyTorch实现tensor与numpy数组转换的完整攻略: 将NumPy数组转换为PyTorch张量 我们可以使用torch.from_numpy()函数将NumPy数组转换为PyTorch张量…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部