将值附加到Pandas系列

时间:2018-05-29 12:00:02

标签: python pandas indexing series

我通过pandas从SQL数据库中选择值,但是当我想向现有的pandas系列添加新值时,我会收到“cannt concatenate non-NDframe object”。所以我不确定我该怎么做。

sql = "select * from table"
df = pd.read_sql(sql, conn)
datovalue = df['Datovalue']
datovalue.append(35)

这是我打印出来时数据库的样子:

0   736722.0 

1   736722.0 

2  736723.0  

3  736723.0 

4   736725.0

如何添加额外的(第五个索引在这种情况下)值?

2 个答案:

答案 0 :(得分:4)

有几种等效的方法可以通过索引向系列添加数据:

s = pd.Series([736722.0, 736722.0, 736723.0, 736723.0, 736725.0])

# direct indexing
s[5] = 35

# loc indexing
s.loc[5] = 35

# loc indexing with unknown index
s.loc[s.index.max()+1] = 35

# append with series
s = s.append(pd.Series([35], index=[5]))

# concat with series
s = pd.concat([s, pd.Series([35], index=[5])])

print(s)

0    736722.0
1    736722.0
2    736723.0
3    736723.0
4    736725.0
5        35.0
dtype: float64

答案 1 :(得分:0)

只需使用此

datovalue.append([35])

df = pd.DataFrame([[5],[3]])
df.append([1])
df
   0

0  5

1  3

0  1