2017-02-06 45 views
6

Ben buPandalar: Bir sütuna toplamı kadar birden sütun

Apples Bananas Grapes Kiwis 
2  3   nan  1 
1  3   7  nan 
nan  nan  2  3 

benzer bir dataframe varsa Sana df['Apples'] + df['Bananas'] kullanabilirsiniz tahmin bu

Apples Bananas Grapes Kiwis Fruit Total 
2  3   nan  1  6 
1  3   7  nan  11 
nan  nan  2  3  5 

gibi bir sütun eklemek istiyorum ve bunun gibi, ama benim gerçek veri çerçevem ​​bundan daha büyük. df['Fruit Total']=df[-4:-1].sum gibi bir formülün bir kod satırında hile yapmasını umuyordum. Ancak bu işe yaramadı. Tüm sütunları açıkça toplamaya gerek kalmadan yapmanın bir yolu var mı?

+0

bak. http://stackoverflow.com/questions/25748683/pandas-sum-dataframe-rows-for-given-columns – konstov

cevap

6

Önce iloc tarafından seçip sum edebilirsiniz: orada

df['Fruit Total']= df.iloc[:, -4:-1].sum(axis=1) 
print (df) 
    Apples Bananas Grapes Kiwis Fruit Total 
0  2.0  3.0  NaN 1.0   5.0 
1  1.0  3.0  7.0 NaN   11.0 
2  NaN  NaN  2.0 3.0   2.0 
+0

Mükemmel. Iloc aradığım şey. – Duudsrednaz