首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么这个代码会在熊猫身上造成错误呢?

为什么这个代码会在熊猫身上造成错误呢?
EN

Stack Overflow用户
提问于 2021-12-24 17:53:43
回答 1查看 142关注 0票数 1

我试图在Stepik上解决这个问题:名为my_stat的dataframe包含4列:session_valuegrouptimen_users。在变量n_users中,我们将所有负值​​替换为n_users的中值(当然不包括负值)。以下是我写的:

代码语言:javascript
复制
import pandas as pd    
import numpy as np

my_stat = my_stat['session_value'].replace(np.nan, 0)
my_stat.loc[my_stat['n_users'] < 0, 'n_users'] = my_stat['n_users'].median()

但我知道这个错误:

代码语言:javascript
复制
Error:
Traceback (most recent call last):
  File "jailed_code", line 25, in <module>
    med = my_stat['n_users'].median()
  File "/home/stepic/instances/master-plugins/sandbox/python3/lib/python3.6/site-packages/pandas/core/series.py", line 871, in __getitem__
    result = self.index.get_value(self, key)
  File "/home/stepic/instances/master-plugins/sandbox/python3/lib/python3.6/site-packages/pandas/core/indexes/base.py", line 4405, in get_value
    return self._engine.get_value(s, k, tz=getattr(series.dtype, "tz", None))
  File "pandas/_libs/index.pyx", line 80, in pandas._libs.index.IndexEngine.get_value
  File "pandas/_libs/index.pyx", line 90, in pandas._libs.index.IndexEngine.get_value
  File "pandas/_libs/index.pyx", line 135, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/index_class_helper.pxi", line 109, in pandas._libs.index.Int64Engine._check_type
KeyError: 'n_users'

我怎么才能修好它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-24 17:56:58

改变你的路线

代码语言:javascript
复制
my_stat = my_stat['session_value'].replace(np.nan, 0)

到这个

代码语言:javascript
复制
my_stat['session_value'] = my_stat['session_value'].replace(np.nan, 0)

使用fillna**:** ,甚至更好的是使用

代码语言:javascript
复制
my_stat['session_value'] = my_stat['session_value'].fillna(0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70475467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档