【问题标题】:Python Pandas Column Names [duplicate]Python Pandas 列名 [重复]
【发布时间】:2021-11-26 23:12:48
【问题描述】:

我有一个包含四列的 CSV 文件:CategoryTypeProviderCost

Category ,Type,Provider,Cost 
Home,Mortgage,Real Homes,"$1,500.00"
Utilities,Gas,Landsberg Gas,$100.00
Utilities,Electric,Edison,$100.00
Utilities,Internet,Verizon Fios,$60.00
Food,Groceries,Ralphs,$280.00

我使用以下代码将 csv 文件导入 DataFrame:

bills = pd.read_csv('Bills.csv')

然后我尝试读取终端中的列名,例如bills.Category

发现bills.Categorybills.Cost无法读取,返回属性错误。我修改了 CSV 文件,使 Category 变为 mainCategoryCost 变为 Price。修改后,我重新运行了上面的方法,列被正确读取并打印到终端。

我不知道为什么我第一次收到这些错误,除了一些关键字在 Python/Pandas 中受到限制。

对此的任何解释都会非常有帮助!

【问题讨论】:

  • 请您出示您的 CSV 文件样本吗?
  • 发布示例!
  • 不错。请您也添加您的 CSV 文件吗?
  • 我无法在没有托管的情况下添加文件。我已经添加了 csv 在文本编辑器中的显示方式

标签: python pandas dataframe


【解决方案1】:

您的 CSV 文件的某些列名周围有空格,这就是您遇到错误的原因。在您致电pd.read_csv 之后,添加以下行:

bills.columns = bills.columns.str.strip()

那么你应该可以做bills.Category等(如果你把mainCategory改回Category)。

【讨论】:

  • 谢谢!这行得通。我不确定为什么导出的文件带有额外的空格(不要以为我把它们放在自己里面)但是当再次发生这种情况时会使用这种方法
  • 是的,它有时会发生。可能是因为 Excel 电子表格中有空格?无论如何,请记住尽快接受这个答案:)
猜你喜欢
  • 2018-04-02
  • 2019-07-21
  • 1970-01-01
  • 2019-08-13
  • 2013-02-05
  • 2021-12-17
  • 1970-01-01
  • 1970-01-01
  • 2013-11-19
相关资源
最近更新 更多