如何在熊猫中做一系列的系列

时间:2013-01-09 12:45:02

标签: python pandas

说我有两个系列:a和b,

a = Series(None, index=['a','b','c'])
b = Series('lol', index=['j','k','l'])

我想将b存储为a的一个元素,

a['a'] = b

但我得到

ValueError: setting an array element with a sequence.

是否可以将熊猫系列存放在熊猫系列中?我该怎么做?感谢。

1 个答案:

答案 0 :(得分:5)

您可以使用方法astype重新制作dtype

In [11]: a = a.astype(object)

In [12]: a['a'] = b

In [13]: a
Out[13]: 
a    [lol, lol, lol]
b                NaN
c                NaN

或者(使用astype)在构建a时可以强制dtype成为对象:

In [14]: a = Series(None, index=['a','b','c'], dtype=object)

您收到此错误的原因是因为float64,不允许使用Series,同样也不允许使用字符串 - 尝试设置a['a'] = 'lol'并且您将获得ValueError

In [21]: a = Series(None, index=['a','b','c'])

In [22]: a.dtype
Out[22]: dtype('float64')

您可以详细了解type-casting in the docs