如何将使用字典创建的新系列添加到具有新索引的现有数据框。
最初,我创建了两个系列“ series1”和“ series2”,然后从这两个序列中创建了一个数据框。
现在假设我想添加一个在商店进行交易的特定个人的新行,即“商店1”,将其称为“ series3”,并设置一个特定的索引,“商店1”。
但是当我打印series3时,它会输出NaN。我可以肯定的是,我不能以这种方式使用字典,但是似乎无法找到解决方案。
我的最终目标是添加一个新行,并在数据框中已经存在类似的索引,或者创建一个新行。
如何使用字典使用Series添加新行?还是有可能?
series1 = pd.Series({'Name': 'Adam','Age':25, 'Transacted': 'Yes'})
series2 = pd.Series({'Name': 'Mark', 'Age':26, 'Transacted': 'No'})
df = pd.DataFrame([series1, series2], index = ["Store 1", "Store 2"])
series3 = pd.Series({'Name':'John', 'Age':22, 'Transacted': 'Yes'}, index = ["Store 1"])
答案 0 :(得分:1)
是的,有可能,但是首先从Series
构造函数中删除series3
的索引并使用setting with enlargement:
series1 = pd.Series({'Name': 'Joe',
'Age':25,
'Transacted': 'Yes'})
series2 = pd.Series({'Name': 'Mark',
'Age':26,
'Transacted': 'No'
})
df = pd.DataFrame([series1, series2], index = ["Store 1", "Store 2"])
print (df)
series3 = pd.Series({'Name':'John', 'Age':22, 'Transacted': 'Yes'})
print (series3)
df.loc['Store 3'] = series3
print (df)
Name Age Transacted
Store 1 Joe 25 Yes
Store 2 Mark 26 No
Store 3 John 22 Yes
或者:
df.loc['Store 3'] = {'Name':'John', 'Age':22, 'Transacted': 'Yes'}
print (df)
Name Age Transacted
Store 1 Joe 25 Yes
Store 2 Mark 26 No
Store 3 John 22 Yes