如何通过 pandas 计算数据框中的总数
How to calculate totals in dataframe by pandas
我有这个数据框:
Date Trader1 Trader2 Trader3
01/04/2020 4 6 8
02/04/2020 4 6 8
03/04/2020 4 7 8
04/04/2020 4 7 8
05/04/2020 3 5 7
06/04/2020 2 4 7
07/04/2020 2 3 6
08/04/2020 3 3 6
09/04/2020 3 5 7
10/04/2020 3 5 7
11/04/2020 3 5 6
我想使用 python/pandas 库获取每列的总计。当我应用 a.loc['Total'] = pd.Series(a.sum())
时,我可以获得每列的总计结果,但它还会将 Date
列(日期)的值加在一起。如何只计算所需列的总计?
data[['Trader1','Trader2','Trader3']].sum()
我刚看到你的评论,可能有更好的方法,但我认为这应该有效
data[data.columns[1:]].sum()
您必须在最后一行提供范围。
您可以 select 只有数字列 DataFrame.select_dtypes
:
a.loc['Total'] = a.select_dtypes(np.number).sum()
您可以通过 DataFrame.drop
:
删除列 Date
a.loc['Total'] = a.drop('Date', axis=1).sum()
或 select 所有没有第一个按位置 DataFrame.iloc
:
的列
a.loc['Total'] = a.iloc[:, 1:].sum()
print (a)
Date Trader1 Trader2 Trader3
0 01/04/2020 4.0 6.0 8.0
1 02/04/2020 4.0 6.0 8.0
2 03/04/2020 4.0 7.0 8.0
3 04/04/2020 4.0 7.0 8.0
4 05/04/2020 3.0 5.0 7.0
5 06/04/2020 2.0 4.0 7.0
6 07/04/2020 2.0 3.0 6.0
7 08/04/2020 3.0 3.0 6.0
8 09/04/2020 3.0 5.0 7.0
9 10/04/2020 3.0 5.0 7.0
10 11/04/2020 3.0 5.0 6.0
Total NaN 35.0 56.0 78.0
我有这个数据框:
Date Trader1 Trader2 Trader3
01/04/2020 4 6 8
02/04/2020 4 6 8
03/04/2020 4 7 8
04/04/2020 4 7 8
05/04/2020 3 5 7
06/04/2020 2 4 7
07/04/2020 2 3 6
08/04/2020 3 3 6
09/04/2020 3 5 7
10/04/2020 3 5 7
11/04/2020 3 5 6
我想使用 python/pandas 库获取每列的总计。当我应用 a.loc['Total'] = pd.Series(a.sum())
时,我可以获得每列的总计结果,但它还会将 Date
列(日期)的值加在一起。如何只计算所需列的总计?
data[['Trader1','Trader2','Trader3']].sum()
我刚看到你的评论,可能有更好的方法,但我认为这应该有效
data[data.columns[1:]].sum()
您必须在最后一行提供范围。
您可以 select 只有数字列 DataFrame.select_dtypes
:
a.loc['Total'] = a.select_dtypes(np.number).sum()
您可以通过 DataFrame.drop
:
Date
a.loc['Total'] = a.drop('Date', axis=1).sum()
或 select 所有没有第一个按位置 DataFrame.iloc
:
a.loc['Total'] = a.iloc[:, 1:].sum()
print (a)
Date Trader1 Trader2 Trader3
0 01/04/2020 4.0 6.0 8.0
1 02/04/2020 4.0 6.0 8.0
2 03/04/2020 4.0 7.0 8.0
3 04/04/2020 4.0 7.0 8.0
4 05/04/2020 3.0 5.0 7.0
5 06/04/2020 2.0 4.0 7.0
6 07/04/2020 2.0 3.0 6.0
7 08/04/2020 3.0 3.0 6.0
8 09/04/2020 3.0 5.0 7.0
9 10/04/2020 3.0 5.0 7.0
10 11/04/2020 3.0 5.0 6.0
Total NaN 35.0 56.0 78.0