2022年 11月 9日

python 数据框提取只含特定字符的列名

读取数据框test_df列名

lst = test_df.columns.tolist()
  • 1

或者

lst = list(test_df.columns)
  • 1

只取含字符’ql_m12’的列名

var_lst = list(filter(lambda x: len(x) != len(x.replace('ql_m12','')),lst))
  • 1

filter函数

filter()函数用于过滤序列,过滤掉不符合条件的元素,返回符合条件的元素组成新列表。

filter(function,iterable)     # 其中function为函数,iterable为序列
  • 1
  • 2
  • 3

有关filter函数的参考引用

  1. https://blog.csdn.net/blwinner/article/details/81944142?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.control
  2. https://blog.csdn.net/quanlingtu1272/article/details/95463171

更简单的方法:

var_lst = df.columns.str.contains('ql_m12')
  • 1

#多个列名提取

lst = ['key_w1', ..., 'key_wn']
var_lst = df.columns.str.contains('|'.join(lst)) 
  • 1
  • 2