Python 输入类型列表?

Python 输入类型列表?,python,pandas,Python,Pandas,熊猫中的列是否可以是np.array类型?或者python列表等等? 我在试着 a array_col 0 100 [1,2,8,0] 1 5 [1,3 4,8] 2 3 [1,2 4,8] 如果相关的话,所有列的长度都是相同的。 我所追求的功能是将所有数组列初始化为[0,0,…0],然后根据行和前一个数组(例如,在第n行上,将所有数组乘以n,并使数组列[n]=0) 另一种方法是为每个索引创建

熊猫中的列是否可以是np.array类型?或者python列表等等? 我在试着

    a         array_col
0   100       [1,2,8,0]
1   5         [1,3 4,8]      
2   3         [1,2 4,8]     
如果相关的话,所有列的长度都是相同的。 我所追求的功能是将所有数组列初始化为[0,0,…0],然后根据行和前一个数组(例如,在第n行上,将所有数组乘以n,并使数组列[n]=0)
另一种方法是为每个索引创建一个新列(即在我的例子中为30个新列,并使操作更慢)。
想法?
编辑:
我想要这样的东西:

但两者都有

df['hist'] = [1,2,3]

给出了错误

ValueError: Length of values does not match length of index

您的示例可以这样解决:

df['hist'] = [[1, 2, 3] for _ in range(df.size)]
df
#     a       hist
#0  100  [1, 2, 3]
#1    5  [1, 2, 3]
#2    3  [1, 2, 3]
或:

要获得所需的输出,请指定嵌套列表:

df['hist'] = [[1,2,8,0],[1,3,4,8],[1,2,4,8]]
df
#     a          hist
#0  100  [1, 2, 8, 0]
#1    5  [1, 3, 4, 8]
#2    3  [1, 2, 4, 8]

可以检查
pd.DataFrame({'a':[100,5,3],'array_col':[1,2,8,0],[1,3,4,8],[1,2,4,8]})
RafaelC这是可行的,在创建df之后我如何使其生效?
(在我的例子中是30个新列,并且使操作速度慢得多)。
你确定吗?我认为即使是30列
int
类型也比一系列列表更容易/更快操作。不要在熊猫系列中使用
list
,除非你已经证明它更有效。
df['hist'] = [[1, 2, 3] for _ in range(df.size)]
df
#     a       hist
#0  100  [1, 2, 3]
#1    5  [1, 2, 3]
#2    3  [1, 2, 3]
df['hist'] = [np.zeros(3) for _ in range(df.size)]
df
#     a             hist
#0  100  [0.0, 0.0, 0.0]
#1    5  [0.0, 0.0, 0.0]
#2    3  [0.0, 0.0, 0.0]
df['hist'] = [[1,2,8,0],[1,3,4,8],[1,2,4,8]]
df
#     a          hist
#0  100  [1, 2, 8, 0]
#1    5  [1, 3, 4, 8]
#2    3  [1, 2, 4, 8]