我有一个熊猫数据框:
Col1 Col2 Col3
0 1 2 3
1 2 3 4
我想在两列[Col1,Col2]
上添加一个新行,如下所示:
Col1 Col2 Col3
0 1 2 3
1 2 3 4
Total 3 5 NaN
忽略Col3
。我该怎么办?预先感谢。
答案 0 :(得分:1)
您可以使用pandas.DataFrame.append
和pandas.DataFrame.sum
方法:
df2 = df.append(df.sum(), ignore_index=True)
df2.iloc[-1, df2.columns.get_loc('Col3')] = np.nan
答案 1 :(得分:0)
您可以使用pd.DataFrame.loc
。请注意,由于将float
视为NaN
,因此最后一列将转换为float
:
import numpy as np
df.loc['Total'] = [df['Col1'].sum(), df['Col2'].sum(), np.nan]
df[['Col1', 'Col2']] = df[['Col1', 'Col2']].astype(int)
print(df)
Col1 Col2 Col3
0 1 2 3.0
1 2 3 4.0
Total 3 5 NaN