Pandas 如何复制数据帧中的行

Pandas 如何复制数据帧中的行

在本文中,我们将介绍如何使用Pandas Python中的功能来复制数据帧(Dataframe)中的行。在实际数据分析过程中,数据通常需要进行处理、过滤、清洗等,这就需要对行进行操作,其中,复制行的需求比较常见。

阅读更多:Pandas 教程

使用iloc方法复制行

Pandas Python中使用iloc方法来实现对行的操作。iloc方法是根据行、列的索引值来进行操作。

首先,我们需要创建一个数据帧,如下所示:

    import pandas as pd

    data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
            'Age': [21, 22, 18, 19, 20],
            'Gender': ['F', 'M', 'M', 'M', 'F']}
    df1 = pd.DataFrame(data)
    print(df1)

运行以上代码,输出结果如下:

       Name  Age Gender
    0    Alice   21      F
    1      Bob   22      M
    2  Charlie   18      M
    3    David   19      M
    4      Eva   20      F

然后,我们使用iloc方法获取第3行的数据:

    row3 = df1.iloc[2]
    print(row3)

运行以上代码,输出结果如下:

    Name      Charlie
    Age            18
    Gender          M
    Name: 2, dtype: object

此时,可已获得第3行数据的一个副本,即row3变量,我们可以使用以下代码将row3变量添加到数据帧末尾,即复制其行:

    df1 = df1.append(row3, ignore_index=True)
    print(df1)

输出结果如下:

       Name  Age Gender
    0    Alice   21      F
    1      Bob   22      M
    2  Charlie   18      M
    3    David   19      M
    4      Eva   20      F
    5  Charlie   18      M

以上代码就是使用iloc方法复制数据帧中一行数据的方法。

使用append方法复制行

除了上文介绍的iloc方法,我们还可以使用append方法复制行。下面我们就来看一下append方法的详细使用。

继续使用上面代码中的数据帧df1,我们可以使用以下代码将第3行复制至数据帧末尾:

    row3 = df1.iloc[2]
    df1 = df1.append(row3, ignore_index=True)

另一个方法是使用以下代码:

    df1 = df1.append(df1.loc[2,:], ignore_index=True)

运行以上代码,得到以下输出结果:

       Name  Age Gender
    0    Alice   21      F
    1      Bob   22      M
    2  Charlie   18      M
    3    David   19      M
    4      Eva   20      F
    5  Charlie   18      M
    6  Charlie   18      M

与上一种方法相同,此处也是获取第3行的数据,然后使用append方法将其添加到数据帧末尾。

总结

本文介绍了使用Pandas Python中iloc方法和append方法来复制数据帧中的行的方法,相信大家已经学会了。无论是数据分析还是机器学习开发,对Pandas的熟悉都是必不可少的。希望本文内容对大家的学习有所帮助。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程