python - 我开始通过 youtube 教程了解 pandas。完成教程后,我遇到了以下问题:
问题描述
我正在使用教程提供的完全相同的 csv 文件。在做教程时,我没有遇到错误。当试图建立我在教程中获得的知识时,我得到了以下错误,虽然我没有更改文件中的数据,或者任何与代码有关的东西,如果你甚至可以称之为代码的话。在互联网上搜索类似的错误,但没有找到任何东西。
编码:
> import pandas as pd
df = pd.read_csv("pokemon_data.csv")
print(df.columns)
print(df.columns["Speed"])
错误:
> File "c:/Users/pgw19/Documents/python/scripts_own/kampagnentool.py", line 5, in <module>
print(df.columns["Speed"])
File "C:\Users\pgw19\lib\site-packages\pandas\core\indexes\base.py", line 4297, in __getitem__
return getitem(key)
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
我的问题:我如何解决错误并确保它不会再次发生?谢谢你的帮助!
解决方案
df.columns
将返回这样的索引。您可以将其视为列名称的列表:
Index(['Size', 'Speed', 'RPM'], dtype='object')
您可以从索引中提取一个元素,但它只会返回一个字符串:
df.columns[1]
会回来Speed
的。
可能,您想要的是从数据框中实际获取一列!你可以这样做
df['Speed']
或df.Speed
- 不是通过df.columns
属性。
推荐阅读
- c++ - 陷入无限循环
- amazon-dynamodb - DynamoDB:多次调用具有相同 ClientRequestToken 的 TransactWriteItems 以实现幂等性
- c++ - 具有可修补嵌入式配置的应用程序
- algorithm - 空间分支定界算法
- mysql - 将 ASP.NET MVC5 项目连接到 Godaddy 上的 mysql 数据库
- postgresql - 最后更新的数据首先显示在 postgres selet 查询中?
- java - 如何在 Java 中的 RingCentral 中发送传真附件 PDF
- android - 如何在 android studio 中使用另一个 SDK 创建新的 SDK?
- ios - SwiftUI 选择器在选择后灰显并禁用
- forms - 付款流程运行时如何禁用条带表单字段?