05.Pandas四种新增数据列

简单介绍

在进行数据分析时,经常需要按照一定条件创建新的数据列,然后进行一步一步分析,常用的有四种新增数据列
1.直接赋值
2.df.apply
3.df.assign
4.按条件选择分组分别赋值

读取csv数据到dataFrame

数据如下

ymd,bWenDu,yWenDu,tianQi,fengXiang,fengJi,aqi,aqiInfo,aqLevel
2018-01-01,3°C,-5°C,🌤,东北风,1-2级,59,良,2
2018-02-22,6°C,-4°C,☀,西南风,2-3级,66,良,1
2018-02-03,4°C,-5°C,☼,西风,5-6级,39,优,1
2018-04-05,5°C,-2°C,☂,北风,1-2级,43,优,1
2019-02-01,2°C,-6°C,☁,南风,1-2级,27,良,2
2019-10-23,3°C,-1°C,🌤,东风,1-2级,18,良,2

读取代码

import pandas as pd
fpath = "../data/tianqi.csv"
df = pd.read_csv(fpath)
print(df.head())

直接赋值方法

案例:计算温差

# 处理数据,先将温度后缀去掉,变成数字类型
df.loc[:, "bWenDu"] = df["bWenDu"].str.replace
### 如何在 Pandas DataFrame 中新增数据Pandas 数据处理中,向现有的 `DataFrame` 添加是一个常见的操作。以下是几种常用的方法: #### 方法一:直接赋值 最简单的方式是在指定的名处直接赋予一个新的 Series 或者表。 ```python import pandas as pd df = pd.DataFrame({ 'A': [1, 2], 'B': [3, 4] }) # 新增 C df['C'] = [5, 6] print(df) ``` 这种方法适用于简单的场景,在已有索引的情况下快速增加新的一[^1]。 #### 方法二:使用 assign 函数 对于更复杂的表达式或者是链式调用的情况,可以考虑采用 `assign()` 方法来进行动态创建新而不改变原始的数据框对象。 ```python new_df = df.assign(D=lambda x: x.A * 2) print(new_df) ``` 此方式不会修改原 `DataFrame` 而返回一个带有额外的新副本[^2]。 #### 方法三:利用 insert 函数 如果需要控制新加入的具体位置,则应该选用 `insert()` 函数。它允许用户指定位移参数 (`loc`) 来决定插入的位置以及要添加名称和对应的数值。 ```python df.insert(loc=0, column='E', value=[7, 8]) print(df) ``` 这段代码会将 E 放置于表格的第一位[^3]。 #### 实际案例演示 下面给出一段完整的例子展示如何灵活运用上述提到的技术来完成特定的任务——比如调整 Age 至首位并打印最终的结果集。 ```python import pandas as pd data = { 'Name': ['Tom', 'Nick'], 'Age': [28, 32], 'Salary': [5000, 4500] } df = pd.DataFrame(data) col = df.pop('Age') df.insert(0, 'Age', col) print(df) ``` 以上就是关于怎样在 Pandas 的 `DataFrame` 结构里边追加新的字段的一些基本技巧[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值