【问题标题】:Combine two unequal dataframes [duplicate]合并两个不相等的数据框[重复]
【发布时间】:2021-04-04 02:01:37
【问题描述】:

我有一个数据框:

df1=pd.DataFrame(columns=["d","e"],data=[(3,1),(2,4),(8,4),(5,1)])

看起来像这样:

    d   e
0   3   1
1   2   4
2   8   4
3   5   1

还有一个看起来像这样的df2=pd.DataFrame(columns=["a","b","c"],data=[(3,4,5)])

    a   b   c
0   3   4   5

我想将单行数据框添加到更大的数据框,跨行重复相同的值:预期结果如下:

    d   e   a   b   c
0   3   1   3   4   5
1   2   4   3   4   5
2   8   4   3   4   5
3   5   1   3   4   5

【问题讨论】:

标签: python pandas dataframe


【解决方案1】:

你可以使用DataFrame.merge:

import pandas as pd

df1 = pd.DataFrame(columns=["d","e"],data=[(3,1),(2,4),(8,4),(5,1)])                               
df2 = pd.DataFrame(columns=["a","b","c"],data=[(3,4,5)]

# Create a common key
df1['key'] = 0
df2['key'] = 0

result = df1.merge(df2, how='outer')

# Remove the key if you don't need it
del result['key']

result:

   d  e  a  b  c
0  3  1  3  4  5
1  2  4  3  4  5
2  8  4  3  4  5
3  5  1  3  4  5

【讨论】:

    猜你喜欢
    • 2016-07-10
    • 1970-01-01
    • 2021-03-30
    • 2021-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-13
    相关资源
    最近更新 更多