将常量列添加到pandas数据框的更好方法

Hal*_*Ali 7 python pandas

目前,当我必须向现有数据框添加常量列时,我会执行以下操作.对我来说,似乎并不是那么优雅(我乘以数据帧长度的部分).想知道是否有更好的方法来做到这一点.

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)
Run Code Online (Sandbox Code Playgroud)

Gee*_*hem 17

您只需提供一个数字即可隐式填充该列.

testdf['avg_sales_per_sku'] = testdf.sales.sum() / testdf.skus.sum() 
Run Code Online (Sandbox Code Playgroud)

文档:

插入标量值时,自然会传播它以填充列