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

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日

相关文章

  • NumPy常用的5个线性代数函数

    NumPy是Python中非常流行的科学计算库,其中的线性代数模块numpy.linalg提供了许多常用的线性代数函数。下面对其中一些重要的函数进行详解。 numpy.dot(a, b) 该函数计算两个数组的点积,即对应元素相乘再求和,可以用于向量、矩阵的乘法以及其他更高维的数组的运算。示例: import numpy as np a = np.array(…

    Numpy 2023年3月3日
    00
  • windows下vscode环境c++利用matplotlibcpp绘图

    在Windows下,可以使用VSCode环境和matplotlibcpp库来绘制C++图形。本攻略将详细介绍如何在Windows下配置VSCode环境和matplotlibcpp库,并提供两个示例说明。以下是整个攻略的步骤: 配置VSCode环境和matplotlibcpp库 步骤1:安装VSCode 首先,需要安装VSCode。可以从官方网站下载安装程序,…

    python 2023年5月14日
    00
  • pandas DataFrame索引行列的实现

    下面是关于“Pandas DataFrame索引行列的实现”的攻略。 Pandas DataFrame的索引 Pandas DataFrame是一种二维表格数据结构,由于其数据处理和分析的便捷性,近年来受到越来越多数据科学家和分析师的青睐。在使用 Pandas DataFrame 时,最常用的方式就是使用索引来定位并处理表格中的数据。 行索引 Pandas …

    python 2023年5月14日
    00
  • mac安装pytorch及系统的numpy更新方法

    在Mac系统中,我们可以使用pip命令安装PyTorch,并使用pip命令更新系统中的NumPy库。以下是对Mac系统中安装PyTorch和更新NumPy库的详细攻略: 安装PyTorch 在Mac系统中,我们可以使用pip命令安装PyTorch。以下是一个使用pip命令安装PyTorch的示例: pip install torch torchvision …

    python 2023年5月14日
    00
  • Python中np.random.randint()参数详解及用法实例

    Python中np.random.randint()参数详解及用法实例 在NumPy中,可以使用np.random.randint()函数生成随机整数。该函数可以生成指定范围内的随机整数,也可以生成指定形状的随机整数数组。下面我们将详细讲解np.random.randint()函数的参数及用法,并提供两个示例来演示它的用法。 np.random.randin…

    python 2023年5月14日
    00
  • python画图中文不显示问题的解决方法

    Python画图中文不显示问题的解决方法 在Python中,使用matplotlib等库进行画图时,有时会出现中文不显示的问题。本文将详细介绍Python画图中文不显示问题的解决方法。 步骤1:安装中文字体 在Python中,需要安装中文字体才能正确显示中文。可以使用以下命令安装中文字体: sudo apt-get install fonts-wqy-zen…

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

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

    2023年3月1日
    00
  • conda虚拟环境默认路径的修改方法

    Conda虚拟环境默认路径的修改方法 在本攻略中,我们将介绍如何修改Conda虚拟环境默认路径。以下是整个攻略,含两个示例说明。 示例1:使用conda config命令修改默认路径 以下是使用conda config命令修改默认路径的步骤: 打开终端。可以使用以下快捷键打开终端: Windows:Win + R,输入cmd,按Enter键 macOS:Co…

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