首页 > 解决方案 > 从dataFrame中提取动态和静态列

问题描述

我正在研究一项要求,其中几列是固定的,而几列是动态的。我被困在数据框过滤器部分。

样本数据集:

ZR  ER   WS  TG  2/3 5/3  2/6 5/50

q   r    e   q   f    w    q    e

注意:数字列是动态的(即每个文件中的计数都会改变) 我想过滤列(ZR、ER 和所有数字列)。

我尝试使用 .iloc[] 但有没有其他方法可以帮助我提取数据集。

预期格式:

ZR  ER  2/3  5/3  2/6  5/50
q   r   f     w     q   e

标签: pythonpython-3.xpandaspyspark

解决方案


如果需要按列表Index.isin和数字测试列是否存在数字,请使用:

m = df.columns.isin(['ZR', 'ER']) | df.columns.str.contains('^\d+/\d+$')
df = df.loc[:, m]

print (df)
  ZR ER 2/3 5/3 2/6 5/50
0  q  r   f   w   q    e

推荐阅读