【问题标题】:Add values to an existing dataframe from list of tuples从元组列表中向现有数据框添加值
【发布时间】:2018-06-21 14:01:27
【问题描述】:

我有一个包含两个空列的数据框。我有以下元组列表:

l = [('l1', 0.966797), ('l1', 0.998047), ('l2', 0.978516), ('l2', 0.998047), ('l3', 0.972656)]

我想将这些值添加到数据框的两个空列中。我知道的一种方法是创建如下列表的数据框

d = pd.DataFrame(l,columns=['s','p'])

但它会创建一个新的数据框,我需要将这些值添加到现有的数据框中。任何建议表示赞赏。

【问题讨论】:

    标签: python list pandas dataframe tuples


    【解决方案1】:

    您可以在列名中使用双 []joinconcat

    df = pd.DataFrame({'column':range(5)})
    print (df)
       column
    0       0
    1       1
    2       2
    3       3
    4       4
    
    l = [('l1', 0.966797), ('l1', 0.998047), 
         ('l2', 0.978516), ('l2', 0.998047), ('l3', 0.972656)]
    

    df[['s','p']] = pd.DataFrame(l)
    
    df = df.join(pd.DataFrame(l,columns=['s','p']))
    
    df = pd.concat([df, pd.DataFrame(l,columns=['s','p'])], axis=1)
    

    print (df)
       column   s         p
    0       0  l1  0.966797
    1       1  l1  0.998047
    2       2  l2  0.978516
    3       3  l2  0.998047
    4       4  l3  0.972656
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多