1

假设我有两个系列: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.

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

4

1 回答 1

6

dtype您可以使用以下方法重铸astype

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, 不允许 aSeries并且同样它不允许字符串 - 尝试设置a['a'] = 'lol',您将得到 a ValueError

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

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

您可以在 docs中阅读有关类型转换的更多信息。

于 2013-01-09T12:58:03.620 回答