为了账号安全,请及时绑定邮箱和手机立即绑定

PyCharm 变量资源管理器不显示带有空格的 pandas 列名称

PyCharm 变量资源管理器不显示带有空格的 pandas 列名称

繁花如伊 2023-10-05 16:54:02
我有这个.xlsx文件,可以使用以下方法成功读取:pandas.read_excel(file_name, sheet_name="customers", index_col=0)这对于大多数列都很有效,但也有一些列在字符之间有空格,例如“个人资料 url”中的列。此列只是缺失。编辑:这是重现该问题的一些代码:import pandas as pddef read_excel(file_name):    df = pd.read_excel(file_name, sheet_name="customers", index_col=0)    for entry in df.iterrows():        print(entry)    return dfread_excel("test_table.xlsx")这是一个要使用的示例表:ID,First,Last,Profile Url1,foo,bar,www.google.com2,fake,name,https://stackoverflow.com/这是第一次迭代中的条目值。这样做我可以获取对象First和Last。我希望也能看到个人资料网址。通过准备这个示例,我了解到任何以小写形式编写的标头也将被忽略。
查看完整描述

1 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

  • 该行为与任何特定文件类型无关,对于列名称中带有空格的任何数据框都是如此,无论创建数据框的方法如何。

  • 解决方案是通过用另一个字符(例如 )替换空格来修复列'_'

  • 小写列名不会预设相同的问题。我的猜测是列名中存在前导或尾随空格,可以使用以下命令将其删除.str.strip()

import pandas as pd


df = pd.DataFrame({'col_no_spaces': [1, 2, 3], 'col with spaces': ['a', 'b', 'c'], ' col_with_leading_trailing_ws ': [4, 5, 6]})


# display(df)

   col_no_spaces col with spaces   col_with_leading_trailing_ws 

0              1               a                               4

1              2               b                               5

2              3               c                               6

请注意带空格的列,不可用于View as Series

https://img1.sycdn.imooc.com//651e79f800013c7708320399.jpg

# strip leading and trailing whitespace, and replace spaces in column names with _

df.columns = df.columns.str.strip().str.replace('\s+', '_', regex=True)


# display(df)

   col_no_spaces col_with_spaces  col_with_leading_trailing_ws

0              1               a                             4

1              2               b                             5

2              3               c                             6

请注意,所有列现在均可用于View as Series


查看完整回答
反对 回复 2023-10-05
  • 1 回答
  • 0 关注
  • 94 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信