如何在 pandas 中添加用于 concat 的指示符列?

How to add an indicator column for concat in pandas?

merge() 有一个指标参数,因此您可以确定从哪个 df 中找到原始数据。我没有看到 concat() 的类似功能。

pd.merge(left=df1, right=df2, indicator=True)

有没有办法用 concat() 创建一个指标列?

我最终在每个文件中创建了一个标记为 FileName 的新列,然后我 concat().

df1['FileName'] = 'df1'
df2['FileName'] = 'df2'


final = pd.concat(df1,df2)

Column1   Column2   Column3  FileName
3         89        08       df1
43        934       34       df1
34        934       32       df2
431       2342      23       df2
import pandas as pd

df1 = pd.DataFrame(['a','b'], index=[0,1], columns=['letter'])
df2 = pd.DataFrame(['c','d','e'], index=[2,3,4], columns=['letter'])
result = pd.concat([df1, df2], axis=0, keys=['from_df1','from_df2']).reset_index(level=[0])

df1

  letter
0      a
1      b

df2

  letter
2      c
3      d
4      e

结果

    level_0 letter
0  from_df1      a
1  from_df1      b
2  from_df2      c
3  from_df2      d
4  from_df2      e