最近我开始学习一些课程来了解有关数据分析的更多信息,在那里我遇到了 Kaggle。
今天我开始使用 panda 相关代码将我的第一个笔记本集成到 Kaggle 中。适用于笔记本电脑.training.csv
当我添加下面的代码时,它工作正常,然后我对其他内核做了一些更改,然后上面的代码停止工作。
错误消息结论看起来很简单“价格”,但这就是该列的命名方式。
我尝试重置内核,但不断遇到同样的问题,我不知道为什么。其他的内核都很好。发现如果存在隐藏问题,kaggle 是否根本无法保存。
有人可以帮忙解释为什么代码停止工作以及如何让它恢复工作吗?
输入
#Show most expensive and cheapest laptop with specifications
# Find the most expensive laptop
most_expensive_laptop = df.loc[df['Price'].idxmax()]
# Print information about the most expensive laptop
print("Most expensive laptop:")
print(most_expensive_laptop)
# Find the cheapest laptop
cheapest_laptop = df.loc[df['Price'].idxmin()]
# Print information about the cheapest laptop
print("\nCheapest laptop:")
print(cheapest_laptop)
输出 最贵的笔记本电脑: 制造商 雷蛇 型号名称 Blade Pro 类别 游戏 屏幕尺寸 17.3 英寸 屏幕 4K 超高清/触摸屏 3840x2160 CPU 英特尔酷睿 i7 7820HK 2.9GHz 内存 32GB 存储 1TB SSD GPU 英伟达 GeForce GTX 1080 操作系统 Windows 操作系统版本 10 重量 3.49kg 价格 54232308.0 名称:196,数据类型:对象
最便宜的笔记本电脑: 制造商 华硕 型号名称 Vivobook E200HA 类别 上网本 屏幕尺寸 11.6 英寸 屏幕 1366x768 CPU 英特尔凌动 x5-Z8350 1.44GHz 内存 2GB 存储 32GB 闪存 GPU 英特尔高清显卡 400 操作系统 Windows 操作系统版本 10 重量 0.98kg 价格1706374.8 名称:20,数据类型:对象
错误信息->
KeyError Traceback (most recent call last)
File /opt/conda/lib/python3.10/site-packages/pandas/core/indexes/base.py:3805, in Index.get_loc(self, key)
3804 try:
-> 3805 return self._engine.get_loc(casted_key)
3806 except KeyError as err:
File index.pyx:167, in pandas._libs.index.IndexEngine.get_loc()
File index.pyx:196, in pandas._libs.index.IndexEngine.get_loc()
File pandas/_libs/hashtable_class_helper.pxi:7081, in pandas._libs.hashtable.PyObjectHashTable.get_item()
File pandas/_libs/hashtable_class_helper.pxi:7089, in pandas._libs.hashtable.PyObjectHashTable.get_item()
KeyError: 'Price'
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
Cell In[594], line 3
1 #Show most expensive and cheapest laptop with specifications
2 # Find the most expensive laptop
----> 3 most_expensive_laptop = df.loc[df['Price'].idxmax()]
5 # Print information about the most expensive laptop
6 print("Most expensive laptop:")
File /opt/conda/lib/python3.10/site-packages/pandas/core/series.py:1121, in Series.__getitem__(self, key)
1118 return self._values[key]
1120 elif key_is_scalar:
-> 1121 return self._get_value(key)
1123 # Convert generator to list before going through hashable part
1124 # (We will iterate through the generator there to check for slices)
1125 if is_iterator(key):
File /opt/conda/lib/python3.10/site-packages/pandas/core/series.py:1237, in Series._get_value(self, label, takeable)
1234 return self._values[label]
1236 # Similar to Index.get_value, but we do not fall back to positional
-> 1237 loc = self.index.get_loc(label)
1239 if is_integer(loc):
1240 return self._values[loc]
File /opt/conda/lib/python3.10/site-packages/pandas/core/indexes/base.py:3812, in Index.get_loc(self, key)
3807 if isinstance(casted_key, slice) or (
3808 isinstance(casted_key, abc.Iterable)
3809 and any(isinstance(x, slice) for x in casted_key)
3810 ):
3811 raise InvalidIndexError(key)
-> 3812 raise KeyError(key) from err
3813 except TypeError:
3814 # If we have a listlike key, _check_indexing_error will raise
3815 # InvalidIndexError. Otherwise we fall through and re-raise
3816 # the TypeError.
3817 self._check_indexing_error(key)
KeyError: 'Price'
我删除了代码,重新输入。尝试更改名称 重新启动内核 重新启动所有内核并清除输出。
您检查过
df.columns
是否包含Price
吗?