Python DataFrame加入特定列索引?

时间:2015-10-13 15:01:39

标签: python python-2.7 pandas

我有两个我希望加入的具有不同列名的Dataframe。我没有找到具有两个不同名称或使用列索引的连接的示例。

fileDf = pd.read_csv(fileMeta, sep=delimiter, error_bad_lines=False)
lakeDf = pd.read_csv(lakeData, sep=delimiter, error_bad_lines=False)

在fileDF中,我有索引7或DATASET_ID。在lakeDF中,我想要加入TBL_ID或索引0。当有两个不同的名称/索引时,我该怎么办?

编辑:仍未合并,此处是来自 .head()

的示例
-----------------file DF-------------------
   FILE_ID       CREATION_DT_TM entityType             FILE_LOCATION OWNER  \
0   268159  2015/08/12T03:52:58       File  /src/impacs/im_acct.dat/  null
1   268165  2015/08/22T05:03:51       File  /src/impacs/im_acct.dat/  null
2   268173  2015/07/18T04:48:12       File  /src/impacs/im_acct.dat/  null
3   268177  2015/09/09T05:17:03       File  /src/impacs/im_acct.dat/  null
4   268179  2015/07/28T04:31:06       File  /src/impacs/im_acct.dat/  null

  PUBLICATION_DT_TM    FILE_SIZE  DATASET_ID          last_modified NAV_ID  \
0              null  22095504000      578748  2015-10-07 08:16:48.0   null
1              null  22169091000      578748  2015-10-07 08:16:48.0   null
2              null  21933828000      578748  2015-10-07 08:16:48.0   null
3              null  22279575000      578748  2015-10-07 08:16:48.0   null
4              null  21994644000      578748  2015-10-07 08:16:48.0   null


[5 rows x 22 columns]
-----------------lake DF ------------------
   TBL_ID TBL_ADDITIONAL_INFO TBL_API TBL_ARCHIVECRITERIA  \
0  576781                null    null                null
1  576782                null    null                null
2  576783                null   false                null
3  576784                null    null                null
4  576785                null   false                null

1 个答案:

答案 0 :(得分:1)

你可以在lhs和rhs的不同列上合并,另外你可能需要在你的情况下指定合并的类型,因为你在lhs上有重复的值然后你可以选择执行“左”和“#”; merge

fileDf.merge(lakeDf. left_on='DATESET_ID', right_index=True, how='left')