首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从Pandas DataFrame列标题获取列表

从Pandas DataFrame列标题获取列表
EN

Stack Overflow用户
提问于 2013-10-21 05:18:38
回答 18查看 2M关注 0票数 1.2K

我想从Pandas DataFrame获取列标题的列表。DataFrame将来自用户输入,因此我不知道将有多少列或它们将被称为什么。

例如,如果给我一个这样的DataFrame:

代码语言:javascript
运行
复制
>>> my_dataframe
    y  gdp  cap
0   1    2    5
1   2    3    9
2   8    7    2
3   3    4    7
4   6    7    7
5   4    8    3
6   8    2    8
7   9    9   10
8   6    6    4
9  10   10    7

我会得到一个这样的列表:

代码语言:javascript
运行
复制
>>> header_list
['y', 'gdp', 'cap']
EN

回答 18

Stack Overflow用户

回答已采纳

发布于 2013-10-21 05:23:07

您可以通过执行以下操作来获取列表形式的值:

代码语言:javascript
运行
复制
list(my_dataframe.columns.values)

您也可以简单地使用(如Ed Chum's answer中所示):

代码语言:javascript
运行
复制
list(my_dataframe)
票数 1.9K
EN

Stack Overflow用户

发布于 2013-10-21 06:25:16

有一个内置的方法是性能最好的:

代码语言:javascript
运行
复制
my_dataframe.columns.values.tolist()

.columns返回一个Index.columns.values返回一个数组,它有一个辅助函数.tolist来返回列表。

如果性能对您来说不是那么重要,那么Index对象定义一个您可以直接调用的.tolist()方法:

代码语言:javascript
运行
复制
my_dataframe.columns.tolist()

性能上的差异是显而易见的:

代码语言:javascript
运行
复制
%timeit df.columns.tolist()
16.7 µs ± 317 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)

%timeit df.columns.values.tolist()
1.24 µs ± 12.3 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

对于那些讨厌打字的人,你可以在df上调用list,如下所示:

代码语言:javascript
运行
复制
list(df)
票数 475
EN

Stack Overflow用户

发布于 2014-12-02 04:31:57

我做了一些快速测试,也许并不奇怪,使用dataframe.columns.values.tolist()的内置版本是最快的:

代码语言:javascript
运行
复制
In [1]: %timeit [column for column in df]
1000 loops, best of 3: 81.6 µs per loop

In [2]: %timeit df.columns.values.tolist()
10000 loops, best of 3: 16.1 µs per loop

In [3]: %timeit list(df)
10000 loops, best of 3: 44.9 µs per loop

In [4]: % timeit list(df.columns.values)
10000 loops, best of 3: 38.4 µs per loop

(不过,我还是很喜欢list(dataframe),所以thanks EdChum!)

票数 103
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19482970

复制
相关文章

相似问题

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