2024-03-28 14:28:13 发布
网友
我有一个带有以下列名的df:
Name, Id, xyz,..., ijk, 1, 2, 3, val1, val2,...
我想删除所有名称不包含数字且只保留Name和Id的列。有没有有效的方法?你知道吗
Name
Id
结果将是:Name,Id,1,2,3,val1,val2,。。。你知道吗
谢谢!你知道吗
IIUC公司:
df = df.loc[:, df.columns.astype(str).str.contains('\d') | df.columns.isin(['Name','Id'])]
演示:
In [224]: df Out[224]: Name Id xyz ijk 1 2 3 val1 val2 0 1 2 3 4 5 6 7 8 9 In [225]: df = df.loc[:, df.columns.astype(str).str.contains('\d') | df.columns.isin(['Name','Id'])] In [226]: df Out[226]: Name Id 1 2 3 val1 val2 0 1 2 5 6 7 8 9
基于MaxU的答案。你知道吗
new_columns = df.columns[df.columns.astype(str).str.match("(.*\d.*)|Id|Name")] df[new_columns]
IIUC公司:
演示:
基于MaxU的答案。你知道吗
相关问题 更多 >
编程相关推荐