在 Pandas 中,可以使用
.loc
或
.iloc
指定行索引、列索引的位置来新增一行。同时,可以使用布尔索引来实现按条件赋值。
以下是一个示例代码,其中 DataFrame 的列名分别为 A、B、C、D。
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 新增一行
df.loc[len(df)] = [4, 5, 6]
# 按条件赋值
df.loc[df['A'] > 2, 'D'] = 0
首先,我们使用 pd.DataFrame()
创建了一个包含三列的 DataFrame。然后,使用 df.loc[len(df)] = [4, 5, 6]
新增了一行数据,这里的 len(df)
表示新增行的索引位置为当前 DataFrame 的长度(即在最后一行新增一行)。接着,使用 df.loc[df['A'] > 2, 'D'] = 0
实现了按条件赋值,即将 DataFrame 中 A 列大于 2 的行的 D 列值赋为 0。
注意,df.loc
中的第一个参数为行索引位置,可以是整数(如示例中的 len(df)
)或行索引标签;第二个参数为列索引位置或列名,可以是整数(如示例中的 3)或列名(如示例中的 'D'
)。另外,布尔索引可以使用与、或、非等运算符组合,实现更复杂的条件筛选。