我有一个这样的数据框:
col1 col2 col3 col4 col5 col6 col7 col8
0 5345 rrf rrf rrf rrf rrf rrf
1 2527 erfr erfr erfr erfr erfr erfr
2 2727 f f f f f f
我想重命名所有列,但不想重命名col1和col2。
所以我试着做一个循环
print(df.columns)
for col in df.columns:
if col != 'col1' and col != 'col2':
col.rename = str(col) + '_x'
但效率不高…没用!
如果
col1
和col2
是第一和第二列名,则最简单的解决方案是:另一个有^{} 或列表理解的解决方案:
最快的是列表理解:
计时:
您可以使用带regex模式的^{} 来筛选感兴趣的列,然后使用} :
zip
构造一个dict并将其作为参数传递给^{因此,在这里使用
str.contains
筛选列将返回不匹配的列,因此列顺序不相关您可以使用DataFrame.rename()方法
相关问题 更多 >
编程相关推荐