首页 >后端开发 >Python教程 >如何有效地将多行附加到 Pandas DataFrame?

如何有效地将多行附加到 Pandas DataFrame?

Barbara Streisand
Barbara Streisand原创
2024-12-27 19:18:10298浏览

How Can I Efficiently Append Multiple Rows to a Pandas DataFrame?

高效地将多行追加到 Pandas DataFrame

处理数据时,经常会遇到需要增量追加行的情况现有的 DataFrame。虽然使用 df._set_value() 一次设置一个字段的值的方法是可行的,但添加多行的效率可能很低。

使用 df.loc[i] 进行高效行添加

添加多行的更好、更简洁的方法是使用 df.loc[i]。它的工作原理如下:

  1. 导入必要的库:

    import pandas as pd
    from numpy.random import randint
  2. 使用所需的列创建一个空的 DataFrame:

    df = pd.DataFrame(columns=['lib', 'qty1', 'qty2'])
  3. 迭代您想要的行数想要添加:

    for i in range(5):
  4. 在循环内,使用 df.loc[i] 访问索引为 i 的行,并为 lib、qty1 和 qty2 分配所需的值列。例如:

    df.loc[i] = ['name' + str(i)] + list(randint(10, size=2))

示例:

这是一个完整的示例,演示如何使用 df.loc[i] 追加五行给我们的DataFrame:

import pandas as pd
from numpy.random import randint

df = pd.DataFrame(columns=['lib', 'qty1', 'qty2'])
for i in range(5):
    df.loc[i] = ['name' + str(i)] + list(randint(10, size=2))

print(df)

输出:

     lib qty1 qty2
0  name0    3    3
1  name1    2    4
2  name2    2    8
3  name3    2    1
4  name4    9    6

使用 df.loc[i] 提供了一种方便高效的方法来一次向 DataFrame 添加多行,无需多次调用 df._set_value().

以上是如何有效地将多行附加到 Pandas DataFrame?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn