for 循环对几个dataframe相加
时间: 2023-05-08 10:57:17 浏览: 203
如果需要把几个DataFrame相加,可以使用for循环迭代每个DataFrame,然后使用pandas的add()函数对它们进行加法运算,并将结果存储到一个新的DataFrame中。
下面是一个示例代码:
```
import pandas as pd
# 创建三个DataFrame用于演示
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [10, 20, 30], 'B': [40, 50, 60]})
df3 = pd.DataFrame({'A': [100, 200, 300], 'B': [400, 500, 600]})
# 定义一个空的DataFrame用于存储相加的结果
result = pd.DataFrame()
# 使用for循环迭代每个DataFrame,并将它们相加
for df in [df1, df2, df3]:
result = result.add(df, fill_value=0)
# 输出相加后的结果
print(result)
```
这段代码中,首先创建了三个DataFrame:df1、df2和df3。然后定义一个空的DataFrame变量result用于存储相加的结果。
接下来,使用for循环迭代三个DataFrame,并使用pandas的add()函数对它们进行加法运算。在add()函数中设置fill_value参数为0,表示在相加过程中,如果存在NaN或缺失值,就将它们替换成0。
最后,输出存储结果的DataFrame变量result,就可以得到三个DataFrame相加的结果。
需要注意的是,在实际使用中,每个DataFrame的结构和字段可能会有所不同。如果不同的DataFrame中有共同的字段,就需要在加法运算中使用相应的列名来指定相加的列。否则,会出现列不匹配的错误。
阅读全文