创建具有连续行的 Pandas Dataframe
在数据分析任务中,经常需要创建 Pandas DataFrame 并迭代添加行到它。为了实现这一点,有多种方法可用,每种方法都有自己的优点。
一种方法是使用带有 columns 参数的 pd.DataFrame() 构造函数来指定所需的列名称。创建一个空的 DataFrame,然后可以使用 _set_value() 方法逐一添加行以设置各个字段值。但是,如果需要为每行同时添加多个字段,则此方法效率较低。
更有效的解决方案是使用 df.loc[i] 语法,其中 i 表示行索引。通过将值列表分配给 df.loc[i],可以一步填充索引 i 处的整行。对于大型数据集,此方法要快得多,因为它避免了多次 _set_value() 调用。
要演示此方法,请考虑以下代码片段:
import numpy as np import pandas as pd df = pd.DataFrame(columns=['lib', 'qty1', 'qty2']) for i in range(5): df.loc[i] = ['name' + str(i)] + list(np.random.randint(10, size=2)) print(df)
此代码创建一个包含三列的空 DataFrame:“lib”、“qty1”和“qty2”。然后,它生成五行数据,“名称”后跟其余列中的两个随机生成的整数值。结果是一个具有指定结构和数据的 DataFrame:
lib qty1 qty2 0 name0 3 3 1 name1 2 4 2 name2 2 8 3 name3 2 1 4 name4 9 6
以上是如何有效地创建具有连续行的 Pandas DataFrame?的详细内容。更多信息请关注PHP中文网其他相关文章!