簡體   English   中英

Pandas DataFrame KeyError 1

[英]Pandas DataFrame KeyError 1

我嘗試使用Pandas啟動以下代碼:

if USER_RATINGS:
  my_ratings = pd.DataFrame.from_records(worksheet.get_all_values()).reset_index()
  my_ratings = my_ratings[my_ratings[1] != '']
  my_ratings = pd.DataFrame({
      'user_id': "943",
      'title':list(map(str, my_ratings[0])),
      'listen_count': list(map(float, my_ratings[1]))
  })
my_ratings.merge(song_df_2, on="title", how="left")
song_df = song_df[song_df.user_id != "943"]
song_df = song_df.append(my_ratings, ignore_index=True)
if users.shape[0] == 943:
  users = users.append(users.iloc[942], ignore_index=True)
  users["user_id"][943] = "943"
print("Added your %d ratings; you have great taste!" % len(my_ratings))
song_df[song_df.user_id=="943"].merge(music[['song_id', 'title']])

但是我有以下錯誤:

During handling of the above exception, another exception occurred:
KeyError
Traceback (most recent call last)
2 frames
/usr/local/lib/python3.6/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance)
   2897                 return self._engine.get_loc(key)
   2898             except KeyError:
-> 2899                 return self._engine.get_loc(self._maybe_cast_indexer(key))
[...]
KeyError: 1

你能幫我弄清楚如何解決這個問題嗎?

my_ratings = my_ratings[my_ratings[1] != '']

看起來 1 (Key) 不是列名 (KeyError)。 如果此語句的目的是刪除空行,請嘗試以下操作:

my_ratings.dropna(inplace=True)

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM