我正在使用一个实践数据集,并被告知创建一个新的列,其中包含如下其他内容的总和:
df["new column"] = df["column4"] + df["column5"] + df["column6"] + df["column7"] + etc....
我觉得这是低效的,因为他们甚至是排队(列4-9),我需要加快我的编码(数据sci竞争即将到来!)。
我怎样才能以更短/更有效的方式做到这一点呢?
我试过使用像df['Total'] = sum(df.columns[4:9])
这样的变体,但它不起作用
免责声明:我是熊猫
的新手
发布于 2020-02-26 01:40:32
假设这些列是相邻的,则使用列切片:
df['new column'] = df.loc[:, 'column4':'column9'].sum(axis=1)
axis=1
表示您是跨列的和,因此您正在计算每一行的总数。
如果它们是分开的,您可以通过一个列表获得它们的和:
cols = ['column4', 'column5', 'column6', 'column7', 'column8', 'column9']
df['new column'] = df[cols].sum(axis=1)
https://stackoverflow.com/questions/60405459
复制相似问题