从元组列表中向现有数据框添加值
Posted
技术标签:
【中文标题】从元组列表中向现有数据框添加值【英文标题】: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'])
但它会创建一个新的数据框,我需要将这些值添加到现有的数据框中。任何建议表示赞赏。
【问题讨论】:
【参考方案1】:您可以在列名中使用双 []
,join
或 concat
:
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
【讨论】:
以上是关于从元组列表中向现有数据框添加值的主要内容,如果未能解决你的问题,请参考以下文章