首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >列表(多维数组)进入pandas数据框列

列表(多维数组)进入pandas数据框列
EN

Stack Overflow用户
提问于 2019-11-28 00:56:36
回答 4查看 824关注 0票数 0

有一个多维数组,我想把它作为一个列引入到df中。

代码语言:javascript
复制
import pandas as pd
import numpy as np

x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
df = pd.DataFrame(['A', 'B'], columns=['First'])

初始df:

代码语言:javascript
复制
  First 
0     A 
1     B 

最终输出应为:

代码语言:javascript
复制
  First  Second  
0     A   [1,2,3]
1     B   [4,5,6]

最后的obj是将表上载到数据库中,我知道这不是保存记录的最好方法。如果你有任何建议,我们非常欢迎。

谢谢。

EN

回答 4

Stack Overflow用户

发布于 2019-11-28 01:02:13

您可以通过将数组x的行解压缩到一个列表中来直接对其进行assign

代码语言:javascript
复制
df.assign(second=[*x])

   First  second
0     A  [1, 2, 3]
1     B  [4, 5, 6]

请注意,如注释中所述,这与以下内容相同:

代码语言:javascript
复制
df.assign(second=list(x))
票数 3
EN

Stack Overflow用户

发布于 2019-11-28 01:01:29

使用:

代码语言:javascript
复制
df['Second']=x.tolist()
print(df)

  First     Second
0     A  [1, 2, 3]
1     B  [4, 5, 6]
票数 2
EN

Stack Overflow用户

发布于 2019-11-28 01:02:11

代码语言:javascript
复制
 import pandas as pd
 import numpy as np

 x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
 df = pd.DataFrame(['A', 'B'], columns=['First'])
 df['second'] = [i for i in x] or df['second'] = list(x)
 print(df)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59075066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档