python - 如何使用过滤器获取python数据框列名

标签 python pandas dataframe

我已将一个 csv 文件导入到数据框中,它有大约 250 多个列,最后一列名称以“未命名:***”开头,并附加了一些数字,例如“未命名:1272”

我想获取以“未​​命名”开头的列名称。下面的脚本没有帮助。

dfColumns = pd.DataFrame(data.columns, columns=['columnName'])
UnnamedColumnName = str(dfColumns.loc[dfColumns['columnName'].str.contains('Unnamed')])

结果:“columnName\n1272 未命名:1272”

下面的脚本也尝试过但没有用:

data.columns.str.contains('Unnamed')

字符串变量“UnnamedColumnName”中的预期结果为“Unnamed: 1272”,我想在删除列脚本中使用此变量。

最佳答案

如果它始终是最后一列,您可以这样做

last_col = df.columns[-1]

您还可以使用rename重命名它:

df = df.rename(columns={'new_name':df.columns[-1]})

此外,str.contains 返回与字符串匹配的列的 bool 掩码,您需要针对列数组使用此掩码:

data.columns[data.columns.str.contains('Unnamed')]

将返回一个数组,其中包含满足 bool 条件的所有列

关于python - 如何使用过滤器获取python数据框列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46093278/

相关文章:

python - 如何让 request.route_url 使用 Pyramid 吐出 https 链接而不是 http?

Dataframe 中的 Python Pandas 数据框

python - 在 Pandas 中使用自定义偏移量别名

python - 使用 pandas 将工作表添加到现有 Excel 文件

python - 根据另一个数据框 pandas 的值添​​加列

python - 如何设置 Autobahn Pub/Sub 服务器和 Autobahn Web 服务器监听同一端口

python - matplotlib:使用 matplotlib 或 seaborn 显示每个日期的所有产品价格的折线图

python - 如何从 pandas 中的列表创建接触点 DataFrame

python pandas 跨列条件计数

python - 数据帧 : Group separate subcolumns with identical column names together