gpt4 book ai didi

Python Pandas 警告消息

转载 作者:太空宇宙 更新时间:2023-11-03 21:43:18 26 4
gpt4 key购买 nike

我正在使用 Python/Pandas 在 Jupyter Notebook 中完成作业

我必须这样做:如果从数据集中随机选择一款游戏,请确定以下概率:考虑到该游戏是在 2000 年之前发布的,因此该游戏“令人惊叹”。

我写了一段似乎有效的代码:

amazingPhraseCount = data[data["score_phrase"] == "Amazing"][data["release_year"] < 2000]["score_phrase"].count()
pAmazingLess2000 = amazingPhraseCount/platformCount
print("Probability it's amazing given it was released before 2000: " + str(Round(pAmazingLess2000, 4)))

但我收到此警告:

C:\Program Files\Anaconda3\lib\site-packages\ipykernel_launcher.py:26: UserWarning: Boolean Series key will be reindexed to match DataFrame index.

所以我担心从我编写的代码中获得的值可能不正确。我只是不明白这个警告。

注意:platformCount 是在之前的代码中定义的。 data 是一个变量数据框,使用 csv_read 从 csv 文件读取

最佳答案

您正在尝试链式索引...两次。文档 explicitly discourage链式索引根本。事实上,我认为这永远都不合适。充其量,它是模棱两可的,但有效;它更有可能会引入错误。

事实上,您根本不需要过滤数据框。您可以使用 bool 级数进行计算:

# calculate total number pre-2000
year_mask = data['release_year'] < 2000
amazing_mask = data['score_phrase'] == 'Amazing'

# calculate probability amazing given pre-2000
res = (year_mask & amazing_mask).sum() / year_mask.sum()

以上计算对于 Python/Pandas 来说是很自然的,因为 True/False值被认为等于 1/0分别。

关于Python Pandas 警告消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52684954/

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