Pandas新增一列的10种常用操作
创作时间:
作者:
@小白创作中心
Pandas新增一列的10种常用操作
引用
1
来源
1.
http://www.360doc.com/content/24/0717/16/7300976_1129007917.shtml
在数据处理和分析领域,pandas是一个非常重要的Python库,它提供了丰富的功能来操作数据。本文将介绍10种不同的方法来为pandas DataFrame新增一列,帮助读者根据实际场景选择合适的方法。
1. 直接赋值法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 直接赋值法
df['C'] = [7, 8, 9]
print(df)
2. assign方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用assign方法
df = df.assign(C=[7, 8, 9])
print(df)
3. insert方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用insert方法
df.insert(2, 'C', [7, 8, 9])
print(df)
insert方法可以在指定位置插入新列。
4. join方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用join方法
new_column = pd.Series([7, 8, 9], name='C')
df = df.join(new_column)
print(df)
5. concat方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用concat方法
new_column = pd.DataFrame({'C': [7, 8, 9]})
df = pd.concat([df, new_column], axis=1)
print(df)
6. apply方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用apply方法
def add_new_column(row):
if row['A']>2:
return row['A']**2 + row['B']*100
else:
return row['A']-row['B']
df['C'] = df.apply(add_new_column, axis=1)
print(df)
本方法是万能方法,经常用到,在经过复杂运算并赋值到新的一列的场景使用尤其多。
7. apply结合lambda
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用apply方法结合lambda函数
df['C'] = df.apply(lambda row: row['A'] * 2, axis=1)
print(df)
8. query方法
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用query方法
df['C'] = df.query('A > 1')['B']
print(df)
9. loc方法
import pandas as pd
# 创建一个DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
# 使用loc方法添加新列'C'
df.loc[:, 'C'] = [7, 8, 9]
print(df)
loc方法用于基于标签选择数据,可以用于添加新列。
10. merge方法
import pandas as pd
# 创建两个DataFrame
data1 = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df1 = pd.DataFrame(data1)
data2 = {'C': [7, 8, 9]}
df2 = pd.DataFrame(data2)
# 使用merge方法添加新列'C'
df = pd.merge(df1, df2, left_index=True, right_index=True)
print(df)
merge方法可以根据指定的键将两个DataFrame合并,用于添加新列。
本文介绍的pandas新增一列常用方法,大家可根据处理数据的实际场景选择适合的方法使用。
热门推荐
北京房车租赁价格一览表
开展节前安全检查 全面筑牢安全防线
“青春益友爱情总局”:上海共青团打造的脱单神器
专家推荐:六种有效方法缓解脚部肿胀
未激活手机卡查询全攻略:号码归属地信息一文搞定
治理逻辑下的中国式“城市”与“城乡融合”
苹果手机微信存储空间不足?这样清理最有效
【案例警示】瞬间起火,姐弟3人全身多处烧伤!小心这种玩具→
中老年旅游人次超11亿,专家详解如何选购旅游保险
耳屎变黄,当心外耳道炎!
金祥名字的运势解析:传统文化与现代视角的对话
生酮饮食抗癌?专家:尚处研究阶段,不能替代正规治疗
胶质瘤治疗:在生存率与生活质量之间寻找平衡
北京同仁医院亦庄院区眼科:新技术引领精准诊疗新突破
北京同仁医院亦庄分院全方位交通指南
特发性水肿食疗指南:五种方法助你改善症状
12种高钾蔬菜+13种水果,轻松消除身体水肿
血糖警报:这些不为人知的误区正在摧毁你的健康!
不同阶段的孩子应该做哪些情感行为训练?
孩子打人、抢玩具、说谎?专家解析1-12岁问题行为应对法
想把孩子教育得更好,这4个定律你一定要知道
夜刀神十香:大胃王的萌点解析
北京亦庄发布六大未来产业示范区规划,打造科技创新新高地
亦庄一日游:必打卡四大网红景点
告别“久坐族”:办公室里的高效瘦身秘籍
脂溢性角化病:如何区分良性老年斑与病毒性皮肤病
有氧锻炼后反而不打呼噜
“打呼噜”是睡得香?其实隐藏着致命危险
脚部6大异常表现,可能是身体问题的预警信号
骨髓增生低下治疗指南:5种有效方案详解