首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将列表解包为pandas数据帧的性能

问将列表解包为pandas数据帧的性能
EN

Stack Overflow用户
提问于 2018-02-01 07:18:05
回答 2查看 620关注 0票数 2

我有一个列表列表,其中外部列表的长度为100k,每个内部列表的长度为2,具有两个布尔项,例如[True, False]。我尝试将第一个条目放入数据帧的一列中,并将第二个条目放入另一个列中。我有可以工作的代码,但它非常慢(大约需要12秒):

代码语言:javascript
复制
populate_df[["col1", "col2"]] = pd.Series(list_of_lists).apply(pd.Series)

有人能推荐一种性能更好的方法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-01 07:20:46

试着这样做:

代码语言:javascript
复制
In [29]: lst = [[False,False],[True, False],[False, True]]

In [30]: df = pd.DataFrame(lst, columns=['col1','col2'])

In [31]: df
Out[31]:
    col1   col2
0  False  False
1   True  False
2  False   True
票数 2
EN

Stack Overflow用户

发布于 2018-02-01 07:27:31

如果你想在现有的数据框中添加列,这是可行的:

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

df = pd.DataFrame()
lst = [[True, False], [False, False], [True, True], [False, True]]

df = pd.concat([df, pd.DataFrame(columns=['A', 'B'])], axis=1)
df.A, df.B = list(zip(*lst))

#        A      B
# 0   True  False
# 1  False  False
# 2   True   True
# 3  False   True
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48553028

复制
相关文章

相似问题

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