gpt4 book ai didi

python - 收到 `KeyError: u' 没有名为 XYZ 的项目'`错误

转载 作者:行者123 更新时间:2023-11-28 21:56:49 24 4
gpt4 key购买 nike

这是我收到的错误运行后我遇到了这个问题:

Traceback (most recent call last):
File "t1.py", line 255, in <module>
pivot_rating = ratings.pivot(index='User-ID', columns='ISBN', values='Book-Rating')
File "/Library/Python/2.7/site-packages/pandas/core/frame.py", line 4182, in pivot
return pivot(self, index=index, columns=columns, values=values)
File "/Library/Python/2.7/site-packages/pandas/core/reshape.py", line 343, in pivot
indexed = Series(self[values].values,
File "/Library/Python/2.7/site-packages/pandas/core/frame.py", line 2003, in __getitem__
return self._get_item_cache(key)
File "/Library/Python/2.7/site-packages/pandas/core/generic.py", line 667, in _get_item_cache
values = self._data.get(item)
File "/Library/Python/2.7/site-packages/pandas/core/internals.py", line 1655, in get
_, block = self._find_block(item)
File "/Library/Python/2.7/site-packages/pandas/core/internals.py", line 1935, in _find_block
self._check_have(item)
File "/Library/Python/2.7/site-packages/pandas/core/internals.py", line 1942, in _check_have
raise KeyError('no item named %s' % com.pprint_thing(item))
KeyError: u'no item named Book-Rating'
Line 255 is pivot_rating = ratings.pivot(index='User-ID', columns='ISBN', values='Book-Rating')

运行以下代码后:

ratings = pd.read_csv('/Users/mona/Downloads/BX-Dump/BX-Book-Ratings.csv', sep=";", quotechar="\"", escapechar="\\")

print ratings
# <class 'pandas.core.frame.DataFrame'>
# Int64Index: 1149779 entries, 0 to 1149778
# Data columns (total 3 columns):
# 276725 1149779 non-null values
# 034545104X 1149779 non-null values
# 0 1149779 non-null values

pivot_rating = ratings.pivot(index='User-ID', columns='ISBN', values='Book-Rating')

但是文件 BX-Book-Ratings.csv 有三列,第三列是评分,每一行都是这样的 "276725";"034545104X";"0" 。知道出了什么问题吗?

最佳答案

您的 ratings DataFrame 没有名为 'Book-Rating' 的列:

>>> ratings = pd.DataFrame([[276725,"034545104X",0]], 
... columns=['User-ID', 'ISBN', 'Book-Rating'])
>>> ratings.pivot(index='User-ID', columns='ISBN', values='Book-Rating')
ISBN 034545104X
User-ID
276725 0

比较:

>>> ratings.columns = ['User-ID', 'ISBN', 'BookRating']
>>> ratings.pivot(index='User-ID', columns='ISBN', values='Book-Rating')
Traceback (most recent call last):
...
KeyError: u'no item named Book-Rating'

更新:

您的解决方案是在使用 names 参数加载数据的代码中指定列。尝试替换

pd.read_csv('/Users/mona/Downloads/BX-Dump/BX-Book-Ratings.csv', 
sep=";", quotechar="\"", escapechar="\\")

pd.read_csv('/Users/mona/Downloads/BX-Dump/BX-Book-Ratings.csv', 
header=None, names=['User-ID', 'ISBN', 'Book-Rating'],
sep=";", quotechar="\"", escapechar="\\")

关于python - 收到 `KeyError: u' 没有名为 XYZ 的项目'`错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20854072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com