python在pandas.DataFrame添加一行

本文介绍了一种使用Python的Pandas库结合Random模块来快速生成包含随机整数的DataFrame数据表的方法。通过简单的几行代码,即可创建指定数量行和列的数据表,并填充-1到1之间的随机整数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 代码示例:

from pandas import *
from random import *
df = DataFrame(columns=('lib', 'qty1', 'qty2'))#生成空的pandas表
for i in range(5):#插入一行
    df.loc[i] = [randint(-1,1) for n in range(3)]
print df


### 向 Pandas DataFrame 添加新的行或列 Pandas 提供了多种方式向 `DataFrame` 中添加新的行或列,以满足不同的数据操作需求。以下是一些常用的方法。 #### 添加新列 可以通过直接赋值的方式向 `DataFrame` 添加新列。只需使用方括号指定新列的名称,并为其分配一个列表或数组即可[^1]: ```python import pandas as pd # 创建初始 DataFrame df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie'], 'age': [25, 30, 35]}) # 添加新列 'gender' df['gender'] = ['F', 'M', 'M'] print(df) ``` 输出结果为: ``` name age gender 0 Alice 25 F 1 Bob 30 M 2 Charlie 35 M ``` 这种方式适用于在已有数据基础上快速扩展字段,且不需要额外处理索引对齐问题。 #### 添加新行 向 `DataFrame` 添加新行通常使用 `loc` 或 `append()` 方法(注意:`append()` 已被弃用,推荐使用 `concat()`)。 ##### 使用 `loc` 添加单行 可以使用 `loc` 指定新行的索引位置并赋值: ```python # 添加一行新数据 df.loc[3] = ['David', 40, 'M'] print(df) ``` 输出结果为: ``` name age gender 0 Alice 25 F 1 Bob 30 M 2 Charlie 35 M 3 David 40 M ``` ##### 使用 `pd.concat()` 添加多行 如果需要一次性添加多个行,推荐使用 `pd.concat()` 方法,它支持将多个 `DataFrame` 或字典形式的数据合并到一起: ```python # 准备新数据 new_data = pd.DataFrame({ 'name': ['Eva', 'Frank'], 'age': [28, 42], 'gender': ['F', 'M'] }) # 合并新数据 df = pd.concat([df, new_data], ignore_index=True) print(df) ``` 输出结果为: ``` name age gender 0 Alice 25 F 1 Bob 30 M 2 Charlie 35 M 3 David 40 M 4 Eva 28 F 5 Frank 42 M ``` 其中 `ignore_index=True` 表示重新生成连续的整数索引。 --- ### 注意事项 - 在添加列时,确保新列的数据长度与 `DataFrame` 的行数一致,否则会引发错误。 - 若使用 `loc` 添加行时索引已存在,则会覆盖原有数据。 - 使用 `pd.concat()` 时建议设置 `ignore_index=True` 以避免索引重复问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值