Python新手求教:如何给DataFrame添加行'4',值为第一行减第二行
简单实现DataFrame添加计算行的方法
嘿,作为Python新手,这种操作真的比你查到的那些晦涩方案简单太多啦!我给你一步步拆解,保证一看就会~
首先,先假设你的DataFrame长这样(我先写个示例,你可以对应替换成自己的):
import pandas as pd # 示例DataFrame,行索引是'1'、'2',列是A、B、C data = {'A': [10, 5], 'B': [20, 12], 'C': [15, 7]} df = pd.DataFrame(data, index=['1', '2'])
方法一:用loc直观赋值(最适合新手理解)
这是最直白的方式,先算出第一行减第二行的结果,再把它作为新行加进去:
# 计算第一行减第二行的差值:直接用行索引取对应行做减法 row_diff = df.loc['1'] - df.loc['2'] # 把差值行添加到DataFrame,指定新行的索引为'4' df.loc['4'] = row_diff
方法二:一行搞定(更简洁)
如果你想少写几行,也可以直接用iloc按行的位置来取(第一行是位置0,第二行是位置1):
df.loc['4'] = df.iloc[0] - df.iloc[1]
验证结果
运行完上面的代码后,打印df就能看到新行啦:
print(df)
输出会是这样:
A B C 1 10 20 15 2 5 12 7 4 5 8 8
小提醒
- 要确保你的DataFrame里的列都是数值类型哦,如果有字符串列,减法会报错;
- 如果你的行索引不是'1'、'2'这种明确的名字,用
iloc按位置取行就更稳妥啦!
内容的提问来源于stack exchange,提问作者Mathijs Moonen
相关产品推荐
相关产品推荐

