将给定数据帧中特定列的值附加到另一个数据帧

时间:2021-02-14 00:31:17

标签: pandas dataframe join merge concatenation

我有两个类似于下面的样本的数据框。第一个 df1 有一列,第二个有列。这是时间序列数据。

'customl' has not been declared`
ISO C++ forbids declaration of 'DECLARE_CUSTOM_INPUT_MEMBER'

两个数据框都有日期类型索引。我想在 df1 的值之后加入来自一列 df2 的值,但我不知道该怎么做。这在实践中真的很简单,但我需要在熊猫中做到这一点。在网上找不到任何解决方案。新的数据框应该是这样的

#include <sound/ay8910.h>
#include <cpu/z80/z80.h>
#include <machine/timekpr.h>

#define multfish_ROM_SIZE 0x80000
#define multfish_VIDRAM_SIZE (0x2000*0x04)

class multfish_state : public driver_device
{
public:
    multfish_state(const machine_config &mconfig, device_type type, const char *tag)
        : driver_device(mconfig, type, tag) { }

    /* Video related */

    int m_disp_enable;
    int m_xor_paltype;
    int m_xor_palette;

    tilemap_t *m_tilemap;
    tilemap_t *m_reel_tilemap;

    /* Misc related */

    UINT8 m_rambk;

    UINT8 m_hopper_motor;
    UINT8 m_hopper;

    UINT8 m_vid[multfish_VIDRAM_SIZE];
    DECLARE_WRITE8_MEMBER(multfish_vid_w);
    DECLARE_WRITE8_MEMBER(multfish_bank_w);
    DECLARE_READ8_MEMBER(bankedram_r);
    DECLARE_WRITE8_MEMBER(bankedram_w);
    DECLARE_WRITE8_MEMBER(multfish_rambank_w);
    DECLARE_READ8_MEMBER(ray_r);
    DECLARE_WRITE8_MEMBER(multfish_hopper_w);
    DECLARE_WRITE8_MEMBER(rollfr_hopper_w);
    DECLARE_WRITE8_MEMBER(multfish_lamps1_w);
    DECLARE_WRITE8_MEMBER(multfish_lamps2_w);
    DECLARE_WRITE8_MEMBER(multfish_lamps3_w);
    DECLARE_WRITE8_MEMBER(multfish_counters_w);
    DECLARE_WRITE8_MEMBER(multfish_f3_w);
    DECLARE_WRITE8_MEMBER(multfish_dispenable_w);
    DECLARE_CUSTOM_INPUT_MEMBER(multfish_hopper_r);
    DECLARE_READ8_MEMBER(multfish_timekeeper_r);
    DECLARE_WRITE8_MEMBER(multfish_timekeeper_w);
    DECLARE_DRIVER_INIT(customl);
    DECLARE_DRIVER_INIT(island2l);
    DECLARE_DRIVER_INIT(keksl);
    DECLARE_DRIVER_INIT(pirate2l);
    DECLARE_DRIVER_INIT(fcockt2l);
    DECLARE_DRIVER_INIT(sweetl2l);
    DECLARE_DRIVER_INIT(gnomel);
    DECLARE_DRIVER_INIT(crzmonent);
    DECLARE_DRIVER_INIT(fcocktent);
    DECLARE_DRIVER_INIT(garageent);
    DECLARE_DRIVER_INIT(rclimbent);
    DECLARE_DRIVER_INIT(sweetl2ent);
    DECLARE_DRIVER_INIT(resdntent);
    DECLARE_DRIVER_INIT(island2ent);
    DECLARE_DRIVER_INIT(pirate2ent);
    DECLARE_DRIVER_INIT(keksent);
    DECLARE_DRIVER_INIT(gnomeent);
    DECLARE_DRIVER_INIT(lhauntent);
    DECLARE_DRIVER_INIT(fcockt2ent);
    TILE_GET_INFO_MEMBER(get_multfish_tile_info);
    TILE_GET_INFO_MEMBER(get_multfish_reel_tile_info);
    virtual void machine_start();
    virtual void machine_reset();
    virtual void video_start();
    DECLARE_MACHINE_RESET(island2a);
    UINT32 screen_update_multfish(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
};

2 个答案:

答案 0 :(得分:1)

您可以使用 pd.concat 函数:

df_new = pd.concat([df1, df2])

答案 1 :(得分:0)

好的!我找到了解决我的问题的方法。我的数据帧是从 xlsx 文件导入的,列的标题应该具有相同的名称。然后 pd.concat 工作正常!谢谢!

问题解决了!