这个熊猫代码出了什么问题?

时间:2017-03-23 18:09:34

标签: python pandas series

import pandas as pd
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
s1.append(s2)
print(s1)

这么简单但不附加。出来的是: 0 1 1 2 2 3 dtype:int64 它只打印s1。它没有附加?我在这做什么傻事?

3 个答案:

答案 0 :(得分:2)

由于.append会返回一个新系列,因此它不会就地变异(例如list.append)。尝试:

import pandas as pd
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
s3 = s1.append(s2)
print(s3)

答案 1 :(得分:2)

import pandas as pd
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
s1 = s1.append(s2)
print(s1)

答案 2 :(得分:0)

append函数返回一个新对象,而不是修改调用它的对象。大多数大熊猫的功能都不在位['默认情况下,意味着它们返回一个新对象(一些允许您指定在适当位置执行操作,但追加不是其中之一)。

相反,您可以重新分配s1:

import pandas as pd
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
s1 = s1.append(s2)
print(s1)