目录
- pandas计算两列相乘
- dataframe两列相乘构造新特征
- 总结
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)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持悠久资源网。
您可能感兴趣的文章:
- 浅谈dataframe两列相乘构造新特征
- 详解Pandas如何高效对比处理DataFrame的两列数据
- pandas 数据实现行间计算的方法