目前,当我必须向现有数据框添加常量列时,我会执行以下操作。对我来说,它似乎并不那么优雅(我乘以数据帧长度的部分)。想知道是否有更好的方法来做到这一点。
import pandas as pd
testdf = pd.DataFrame({'categories': ['bats', 'balls', 'paddles'],
'skus': [50, 5000, 32],
'sales': [500, 700, 90]})
testdf['avg_sales_per_sku'] = [testdf.sales.sum() / testdf.skus.sum()] * len(testdf)
最佳答案
您可以通过仅提供一个数字来隐式填充该列。
testdf['avg_sales_per_sku'] = testdf.sales.sum() / testdf.skus.sum()
来自 the documentation :
When inserting a scalar value, it will naturally be propagated to fill the column
关于python - 将常量列添加到 Pandas 数据框的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29337058/