【跟着stackoverflow学Pandas】 -Get list from pandas DataFrame column headers

来源:互联网 发布:淘宝古着能买吗 编辑:程序博客网 时间:2024/05/17 16:13

最近做一个系列博客,跟着stackoverflow学Pandas。

专栏地址:http://blog.csdn.net/column/details/16726.html

以 pandas作为关键词,在stackoverflow中进行搜索,随后安照 votes 数目进行排序:
https://stackoverflow.com/questions/tagged/pandas?sort=votes&pageSize=15

Get list from pandas DataFrame column headers - Pandas 获取列名

https://stackoverflow.com/questions/19482970/get-list-from-pandas-dataframe-column-headers

获取DataFrame的列名是一个比较简单的操作,又以下几个方法:

  1. [column for column in df]
  2. df.columns.values 返回 array, 可以通过 tolist(), 或者 list(array) 转换为list,一般 tolist()效率更高。
  3. list(df)
  4. df.columns 返回Index,可以通过 tolist(), 或者 list(array) 转换为list

时间测评

import pandas as pdfrom numpy.random import randintdf = pd.DataFrame(columns=list('abcdefghij'))%timeit [column for column in df]# 100000 loops, best of 3: 3.04 µs per loop%timeit df.columns.values.tolist()# 1000000 loops, best of 3: 1.27 µs per loop%timeit list(df.columns.values)# 1000000 loops, best of 3: 1.6 µs per loop%timeit list(df)# 100000 loops, best of 3: 3.82 µs per loop%timeit list(df.columns)# 100000 loops, best of 3: 2.24 µs per loop%timeit df.columns.tolist()# 1000000 loops, best of 3: 1.77 µs per loop

可以发现,df.columns.values 的方法速度最快,特别是 用 tolist() 转换为list的方式。

阅读全文
0 0
原创粉丝点击