python - 苦苦挣扎于基本的数据框操作(Python)
问题描述
我是 Python 的完全新手,尽管在 Google 上搜索了很长一段时间,但我仍然在苦苦挣扎。我知道这不应该这么难。我有一个名为 abc 的数据框,如下所示:
PO_DATE PO_ITEM_NUMBER PO_PRICE PO_QTY
----------------------------------------------------------------
0 01/15/2017 ABC123 1.55 1000
1 01/25/2017 DEF456 5.55 500
我知道最大 PO_PRICE = 5.55,我可以使用以下方法找到:
max_PO_Price = abc["PO_PRICE"].max()
我想要做的就是确定哪一行具有最大 PO_PRICE,找到该行的 PO_QTY 字段,并将其递减 100。我一直想设想这个数据帧是一个二维数组,但是,它不喜欢那个,而且,我知道它不是一个数组,因为涉及到不同的数据类型。我已经把这个搞砸了太久了,所以,终于决定发布。我希望有人能原谅我缺乏知识并为我指明正确的方向。
谢谢。
解决方案
你应该可以这样做:
index_max=abc.loc[abc["PO_price"]==abc["PO_price"].max()].index
for i in index_max
abc.at[i,"PO_QTY"]=abc[i,"PO_QTY"]-100
推荐阅读
- makefile - 在 Windows 10 中使用 Ubuntu 在 trec_eval 中尝试命令“make”或“Makefile”时出错
- lucene - 大表上的索引损坏
- python - 将二维数组与数字进行比较
- javascript - 允许用户仅使用 JS 同时选择多个视频
- neo4j - Cypher:如果节点不存在,则创建多个节点和关系
- angular - 如何修复空白页 NullInjectorError
- google-apps-script - 谷歌云项目不存在(但应该)
- laravel - 如何解决 laravel new command 403 错误?
- r - 如何在循环中基于现有数据帧填充新数据帧
- firebase - 如何在firestore中为多个用户的文档字段制作层次结构