首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在python中创建包含多个列表/数组的数据帧

如何在python中创建包含多个列表/数组的数据帧
EN

Stack Overflow用户
提问于 2019-06-19 18:55:18
回答 2查看 984关注 0票数 2

我有很多由一维数据组成的列表。如下所示:

代码语言:javascript
运行
复制
list1 = [1,2,3,4...]
list2 = ['a','b','c'...] 

现在,我必须像下面这样创建数据帧:

代码语言:javascript
运行
复制
df = [[1,'a'],[2,'b'],[3,'c']]

我需要这个数据帧,这样我就可以使用pandas_profiling分析每一列。请提个建议。

我试过了

代码语言:javascript
运行
复制
list1+list2

但它给出的数据如下:

代码语言:javascript
运行
复制
list3=[1,2,3,4...'a','b'...]

也使用了numpy hpstack,但不起作用

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

list3 = np.hstack([[list1],[list2]])

array([[1,2,3,4,'a','b','c'..]],dtype='<U5')
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-19 19:11:09

您可以使用the answer from this question中描述的zip function来创建嵌套列表。

您应该注意,您不能直接使用压缩函数,因为它可能导致error

解决方案是:

代码语言:javascript
运行
复制
import pandas as pd

list1 = [1,2,3]
list2 = ['a','b','c']
df = pd.DataFrame(list(zip(list1,list2)), columns=['list1', 'list2'])
票数 0
EN

Stack Overflow用户

发布于 2019-06-19 20:22:57

你可以这样做:

代码语言:javascript
运行
复制
import pandas as pd

list1 = [1,2,3,4]
list2 = ['a','b','c','d']
list3 = zip(list1, list2)
df = pd.DataFrame(list3, columns=('list1', 'list2'))
print (df)

输出:

代码语言:javascript
运行
复制
   list1 list2
0      1     a
1      2     b
2      3     c
3      4     d
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56666030

复制
相关文章

相似问题

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