合并不同长度的数据框

2024-09-28 05:28:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个不同的数据帧,其中一个是另一个的扩展版本。(1) 如果两个数据帧共享相同的名称,如何有效地组合这两个数据帧?(2) 还有没有一种方法可以在stackoverflow框中为代码添加四个空格,而不必为每行键入四个空格?那可能很费时。你知道吗

更多细节

一种是包含一个值的多个列表的完整数据帧(sortedregsubjdf)。另一个只包含另一个数据帧的唯一值(因为它是网络中心的数据帧),称为sortedcentralitydf

sortedregsubjdf分类

Name    Organization    Year    Centrality
 6363    (Buz) Business And Commerce     doclist[524]    2012    0.503677
 8383    (Buz) Business And Commerce     doclist[697]    2012    0.503677
 1170    (Buz) Business And Commerce     doclist[103]    2012    0.503677
 1579    (Eco) Economics News    doclist[140]    2013    0.500624
 10979   (Gop) Provincial Government News    doclist[941]    2013    0.501232
 4374    (Gop) Provincial Government News    doclist[368]    2013    0.501232
 10988   (Npt) Not-For-Profits   doclist[942]    2013    0.498810

sortedcentraliesdf(business和commerce只出现一次,因为它包含唯一的值,其中sortedregsubjdf有多个值)

 Name   Centrality
 316     (Buz) Business And Commerce     0.503677
 448     (Eco) Economics News    0.500624
 499     (Gop) Provincial Government News    0.501232
 366     (Npt) Not-For-Profits   0.498810
 217     (Pdt) New Products And Services     0.504600

这是我用来组合两个数据帧的代码,但我想知道是否有更有效的方法?你知道吗

for i, val in enumerate(sortedcentralitydf.Name):
    for x, xval in enumerate(sortedregsubjdf.Name):
        if val == xval:
        #print val, xval
            sortedregsubjdf.Centrality[sortedregsubjdf.Name == xval] =   sortedcentralitydf.Centrality[sortedcentralitydf.Name == val].iloc[0]

Tags: and数据namevalbusinesscommercenewscentrality
1条回答
网友
1楼 · 发布于 2024-09-28 05:28:35

熊猫有一个merge函数。听起来像这样的事情会奏效。。。你知道吗

import pandas as pd
merged_df = pd.merge(sortedregsubjdf, sortedcentralitiesdf, on='Name')

相关问题 更多 >

    热门问题