python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > pandas计算两列相乘

pandas中计算两列相乘实例

作者:icestone_kai

这篇文章主要介绍了pandas中计算两列相乘实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

pandas计算两列相乘

在excel中计算两列相乘是十分容易的,在pandas中也是如此

如下表中的Discoount 和 ListPrice相乘

直接上python代码:

# @DATE : 2021-1-2
# @TIME : 11:49
# @USER : kirin
# 利用pandas计算打折后的价格

import pandas as pd

book = pd.read_csv("data/book_sel_2.csv", index_col='id')
# 操作符的重载,在pandas中 * 如果他的两边都是列,那么,它会把两边进行对齐,相乘
# 方法一:
# book['Price'] = book['ListPrice'] * book['Discount']
# 也可以列 * 数字
# book['Price'] = book['ListPrice'] * 0.8

# 方法二:
# 对整个index进行运算:
# for i in book.index:
#     book['Price'].at[i] = book['ListPrice'].at[i] * book['Discount'].at[i]

# 如果你并不是想全部相乘,而是对其中的部分进行运算:
for i in range(5, 10):
    book['Price'].at[i] = book['ListPrice'].at[i] * book['Discount'].at[i]
print(book)

输出:


对应代码文件:

F:\Project\python\src\WangYiYun\DataAnalysis\15.py

dataframe两列相乘构造新特征

假如我们要构建新特征b

目的是从a中筛选出数值在4~6之间的数据,如果符合就是True,否则就是False。

那么代码如下:

import pandas as pd
lists=pd.DataFrame({'a':[1,2,3,4,5,6,7,8,9]})

lists['b']=(lists['a']<6).mul(lists['a']>4)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文