如何在python中合并具有相同格式的数据帧

时间:2018-06-21 20:22:08

标签: python pandas

看过其他类似的问题,但是没有用例。 我有多个格式相同且没有标题的文件

file1
id, value 
1, 100
2, 150 
...

file2
10, 500
11, 510
....

我想“合并”他们有

id, value
1, 100
2, 150
...
10, 500
11, 510
...

尝试合并,追加,合并,但无法达到我想要的最终结果。

df2 = pd.DataFrame(columns=['id','value'])
df2.columns = ['id','value']
for file_name in os.listdir(work_dir):
    df1 = pd.read_csv(work_dir+'/'+file_name, header=None)
    df1.columns = ['id','value']
    df2 = pd.merge(df2,df1, on ='id')

或任何其他将多个文件加载到数据帧中的建议,不胜感激。我确实有一个来自数据库的另一个数据框将以相同的方式合并,所以合并也是一个问题。

2 个答案:

答案 0 :(得分:0)

您正在寻找追加。试试这个:

df1.append(df2)

答案 1 :(得分:0)

concat也应该为您工作。 https://pandas.pydata.org/pandas-docs/stable/merging.html

您还应该在导入时为每一列命名...

pd.read_csv(work_dir+'/'+file_name, header=None, names=['id', 'value'])

请参见Concatenate rows of two dataframes in pandas