最近做一个系列博客,跟着stackoverflow学Pandas。
专栏地址:http://blog.csdn.net/column/details/16726.html
以 pandas作为关键词,在stackoverflow中进行搜索,随后安照 votes 数目进行排序:
https://stackoverflow.com/questions/tagged/pandas?sort=votes&pageSize=15
https://stackoverflow.com/questions/19482970/get-list-from-pandas-dataframe-column-headers
获取DataFrame的列名是一个比较简单的操作,又以下几个方法:
import pandas as pd
from numpy.random import randint
df = 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的方式。