根据其他单元格值更改多个单元格值

2024-05-23

我想更改包含的单元格moving to movingToOpenor movingToClose基于下一个单元格中给出的状态。

有时循环会被中断并且不会从open to close or close to open

这是我当前的数据框:

                   DateTime  moving
id                                 
36  2018-11-12 15:06:02.487    open
37  2018-11-12 15:06:03.691  moving
38  2018-11-12 15:06:05.505  moving
39  2018-11-12 15:06:08.622   close
40  2018-11-12 15:06:09.023   close
41  2018-11-12 15:06:09.931   close
42  2018-11-12 15:06:11.944  moving
43  2018-11-12 15:06:13.756  moving
44  2018-11-12 15:06:15.168  moving
45  2018-11-12 15:06:18.388   close
46  2018-11-12 15:06:20.100  moving
47  2018-11-12 15:06:23.316  moving
48  2018-11-12 15:06:25.730    open
49  2018-11-12 15:06:26.637    open
50  2018-11-12 15:06:27.644    open
51  2018-11-12 15:06:28.550    open
52  2018-11-12 15:06:28.855    open
53  2018-11-12 15:06:29.356    open
54  2018-11-12 15:06:30.563    open
55  2018-11-12 15:06:31.369  moving
56  2018-11-12 15:06:32.575  moving
57  2018-11-12 15:06:35.593   close

我希望它看起来像这样:

                   DateTime  moving
id                                 
36  2018-11-12 15:06:02.487    open
37  2018-11-12 15:06:03.691  movingToClose
38  2018-11-12 15:06:05.505  movingToClose
39  2018-11-12 15:06:08.622   close
40  2018-11-12 15:06:09.023   close
41  2018-11-12 15:06:09.931   close
42  2018-11-12 15:06:11.944  movingToClose
43  2018-11-12 15:06:13.756  movingToClose
44  2018-11-12 15:06:15.168  movingToClose
45  2018-11-12 15:06:18.388   close
46  2018-11-12 15:06:20.100  movingToOpen
47  2018-11-12 15:06:23.316  movingToOpen
48  2018-11-12 15:06:25.730    open
49  2018-11-12 15:06:26.637    open
50  2018-11-12 15:06:27.644    open
51  2018-11-12 15:06:28.550    open
52  2018-11-12 15:06:28.855    open
53  2018-11-12 15:06:29.356    open
54  2018-11-12 15:06:30.563    open
55  2018-11-12 15:06:31.369  movingToClose
56  2018-11-12 15:06:32.575  movingToClose
57  2018-11-12 15:06:35.593   close

我尝试过将其转换为数字并使用的方法np.ediff1d但这只会使一行发生,在我看来,有一种更简单的方法。


首先转换moving价值观NaN with mask http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.mask.html,回填最后一个非缺失值并添加到通过掩码过滤的原始值:

m = df['moving'] == 'moving'
df.loc[m, 'moving'] = 'movingTo' + df['moving'].mask(m).bfill()
print (df)
                   DateTime         moving
36  2018-11-12 15:06:02.487           open
37  2018-11-12 15:06:03.691  movingToclose
38  2018-11-12 15:06:05.505  movingToclose
39  2018-11-12 15:06:08.622          close
40  2018-11-12 15:06:09.023          close
41  2018-11-12 15:06:09.931          close
42  2018-11-12 15:06:11.944  movingToclose
43  2018-11-12 15:06:13.756  movingToclose
44  2018-11-12 15:06:15.168  movingToclose
45  2018-11-12 15:06:18.388          close
46  2018-11-12 15:06:20.100   movingToopen
47  2018-11-12 15:06:23.316   movingToopen
48  2018-11-12 15:06:25.730           open
49  2018-11-12 15:06:26.637           open
50  2018-11-12 15:06:27.644           open
51  2018-11-12 15:06:28.550           open
52  2018-11-12 15:06:28.855           open
53  2018-11-12 15:06:29.356           open
54  2018-11-12 15:06:30.563           open
55  2018-11-12 15:06:31.369  movingToclose
56  2018-11-12 15:06:32.575  movingToclose
57  2018-11-12 15:06:35.593          close
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据其他单元格值更改多个单元格值 的相关文章

  • 在numpy中,[:,None]选择有什么作用?

    我正在学习 Udacity 的深度学习课程 我遇到了以下代码 def reformat dataset labels dataset dataset reshape 1 image size image size astype np flo
  • 有没有办法拥有租户特定的 JWT 令牌

    我目前正在开发一个 SPA 应用程序 角度 后端使用 Python Flask API 该应用程序将支持多个租户 我对安全概念有点挣扎 我目前正在使用 jwt extend 颁发的 JWT 令牌对所有租户都有效 我当然可以从令牌中获取用户
  • Python 中的自然日/相对日

    我想要一种在 Python 中显示日期项目的自然时间的方法 类似于 Twitter 将显示 刚才 几分钟前 两小时前 三天前 等消息 Django 1 0 在 django contrib 中有一个 人性化 方法 我没有使用 Django
  • 我应该将Python的pyc文件添加到.dockerignore吗?

    我见过几个例子 dockerignorePython 项目的文件 其中 pyc文件和 或 pycache 文件夹被忽略 pycache pyc 由于无论如何这些文件 文件夹都会在容器中重新创建 我想知道这样做是否是一个好习惯 是的 这是一个
  • Python 中字典的合并层次结构

    我有两本词典 而我想做的事情有点奇怪 基本上 我想合并它们 这很简单 但它们是字典的层次结构 我想以这样的方式合并它们 如果字典中的项目本身就是字典并且存在于两者中 我也想合并这些字典 如果它不是字典 我希望第二个字典中的值覆盖第一个字典中
  • 如何获取一个类的所有实例

    我是一名初学者 正在学习 Python 我想创建一个课程Person 在构造函数中 我想将我创建的每个实例放入一个名为 实例 的集合中 然后我希望实例 方法返回所有实例 我怎样才能做到这一点 class Person Type annota
  • 如何在 django admin 中使用自定义字段进行搜索

    我有一个模型并已注册到管理员 并且我已使用自定义字段在列表中显示 class ReportsAdmin admin ModelAdmin def investment self inst return models OrderDetail
  • XGBOOST 功能名称错误 - Python

    也许这个问题已经以不同的形式被问过很多次了 但是 我的问题是当我使用XGBClassifier 对于像数据这样的产品 我收到功能名称不匹配错误 我希望有人能告诉我我做错了什么 这是我的代码 顺便说一句 数据完全是编造的 import pan
  • 如何在 Python 中从 C++/C# 紧密实现 ?: ?

    在 C 中 我可以轻松编写以下内容 string stringValue string IsNullOrEmpty otherString defaultString otherString 有没有一种快速的方法可以在 Python 中做同
  • 如何从张量流数据集迭代器返回同一批次两次?

    我正在转换一些旧代码以使用数据集 API 此代码使用feed dict将一批数据送入列车运行 实际上是三次 然后重新计算损失以供显示使用同一批 所以我需要一个迭代器来返回完全相同的批次两次 或多次 不幸的是 我似乎找不到一种使用张量流数据集
  • 从 SQL 数据库导入表并按日期过滤行时,将 Pandas 列解析为日期时间

    我有一个DataFrame列名为date 我们如何将 日期 列转换 解析为DateTime object 我使用 Postgresql 数据库加载日期列sql read frame 的一个例子date列是2013 04 04 我想做的是选择
  • 有没有比 ` except: pass` 更简洁的替代方案?

    我有一个函数 可以按偏好顺序返回多个组的随机成员 事情是这样的 def get random foo or bar I d rather have a foo than a bar if there are foos return get
  • 如何在 django-rest-framework 查询集响应中添加注释数据?

    我正在为查询集中的每个项目生成聚合 def get queryset self from django db models import Count queryset Book objects annotate Count authors
  • 在 Django 中删除特定用户的所有会话的最优化方法?

    我正在运行 Django 1 3 使用会话中间件和身份验证中间件 settings py SESSION ENGINE django contrib sessions backends db Persist sessions to DB S
  • Django model.foreignKey 并返回 self.text 错误

    所以我正在 Django 中处理 model py 但遇到了 2 个 pylint 错误 我不明白为什么 这是 pylint 的问题还是我在代码中做错了什么 E1120 No value for argument on delete in
  • 如何使用 NLP 确定句子中的中心词?

    例如 如果我得到一个句子 一名英国士兵在阿富汗战斗中丧生 这句话的中心词是 杀 给定 Python 中的 nltk 包 我怎样才能找到它 我不是在谈论词干 我指的是中心词 您正在寻找中心词句子解析 它可以在 Python 的 nltk 包中
  • 通过 Selenium 和 python 切换到 iframe

    我如何在硒中切换到这个 iframe 只知道 您可以使用 XPath 来定位 iframe driver find element by xpath iframe name Dialogue Window Then switch to th
  • 当没有 main 函数时,为什么 sys.settrace 不触发?

    import sys def printer frame event arg print frame event arg return printer sys settrace printer x 1 sys settrace None 上
  • 捕获 subprocess.run() 的输入

    我在 Windows 上有一个交互式命令行 exe 文件 是由其他人编写的 当程序出现异常时 它会终止 并且我对程序的所有输入都会丢失 所以我正在编写一个 python 程序 它调用一个阻塞子进程subprocess run 并捕获所有输入
  • Python DNS服务器IP地址查询

    我正在尝试使用 python 获取 DNS 服务器 IP 地址 要在 Windows 命令提示符下执行此操作 我将使用 ipconfig 全部 如下所示 我想使用 python 脚本做同样的事情 有什么方法可以提取这些值吗 我成功提取了设备

随机推荐