简体   繁体   中英

Create calculated column of sum values of other columns in pandas

I have a dataframe with about 60 columns and the following structure:

    A    B  C           Y
0   12   1  0           1
1   13   1  0   [....]  0
2   14   0  1           1
3   15   1  0           0    
4   16   0  1           1

I want to create a zth column which will be the sum of the values from columns B to Y.

How can I proceed?

To create a copy of the dataframe while including a new column, use assign

df.assign(Z=df.loc[:, 'B':'Y'].sum(1))

    A  B  C  Y  Z
0  12  1  0  1  2
1  13  1  0  0  1
2  14  0  1  1  2
3  15  1  0  0  1
4  16  0  1  1  2

To assign it to the same dataframe, in place, use

df['Z'] = df.loc[:, 'B':'Y'].sum(1)
df

    A  B  C  Y  Z
0  12  1  0  1  2
1  13  1  0  0  1
2  14  0  1  1  2
3  15  1  0  0  1
4  16  0  1  1  2

尝试这个

   df['z']=df.iloc[:,1:].sum(1)

You could

In [2361]: df.assign(Z=df.loc[:, 'B':'Y'].sum(1))
Out[2361]:
    A  B  C  Y  Z
0  12  1  0  1  2
1  13  1  0  0  1
2  14  0  1  1  2
3  15  1  0  0  1
4  16  0  1  1  2

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM