我有一个像这样的数据框df
,我想从数据框中提取列名。这是我的df
。
index my_numbers nums
0 648702831 9
1 26533315 8
2 366 3
3 354701058 9
4 25708239 8
5 70554 5
6 1574512 7
7 3975 4
我需要检查numbers
或num
是否存在,然后我想提取所有这些列。
我做了以下事情,
needed_cols = []
for i in df.columns:
if 'numbers' or 'num' in i:
needed_cols.append(i)
我得到了以下结果,
['index', 'my_numbers', 'nums']
我只需要这些柱子
['my_numbers', 'nums']
我怎样才能得到它们呢?不知道为什么我的代码不能工作。
发布于 2018-12-19 08:14:44
因为'num'
将始终位于'numbers'
中,所以您可以检查列是否包含'num'
吗
例如:
df.columns[df.columns.str.contains('num')]
Index(['my_numbers', 'nums'], dtype='object')
发布于 2018-12-19 08:18:31
你可以filter
你的数据帧:
cols = df.filter(like='num').columns
print(cols)
Index(['my_numbers', 'nums'], dtype='object')
https://stackoverflow.com/questions/53842083
复制相似问题