python - 用 Pandas 中的前一行列填充当前行和列值
问题描述
我有一组读数,我需要当前和以前的值来测量一些参数。如何在 pandas 中轻松填充,以便当前行、列值取自前一行、列值。如果 prev row,col 没有退出,那么我想用 -1 或na
任何东西填充。
events = np.array([[ 3., -1., 441., 780., 30., 262., 0., 0., 0., -1.],
[ 4., 3., 437., 770., 30., 274., 0., 0., 0., -1.],
[ 5., 4, 431., 754., 31., 286., 0., 0., 0., -1.]])
df=pd.DataFrame(data=events, columns=["curr", "expected_prev", "f1", "f2", "f3", "f4", "f5", "f6", "f7","prev"])
例如,我想在熊猫数据框中填充值,如下所示。下面expected_prev
是硬编码的,我如何生成或填充prev
pandas 中的列。
解决方案
检查与shift
df['exp_pre'] = df['curr'].shift().fillna(-1)
推荐阅读
- javascript - 为什么行内块元素即使在宽度为 100% 时也不会占据整个宽度?
- postgresql - PostgreSQL:获取每行的所有 json 对象值
- usrp - USRP N300 中的传输问题
- sharepoint - 创建子文件夹 (Power Automate)
- python - 如何使用 python Azure SDK 和 It Endpoints 创建流量管理器配置文件?
- javascript - 排除大括号之间并获取字符串 - 正则表达式
- c# - Xamarin Android 中的响应式布局
- python - 我正在尝试合并两个数据集,但生成的数据框为空?
- c++ - 是否可以在编译期间获得多维向量的嵌套级别(维度)?
- node.js - 同一端口和主机上的两个应用程序之间的双向通信